有个登录页面,网址是
http://aaaaa.com/login.jsp ,打开 f12 看到 Network 里 Cookie 当中有这么一个参数“JSESSIONID”,无论我如何刷新页面( F5 或者是 ctrl+F5 ),这个 JSESSIONID 都不会变。我输入用户名密码进行登录以后(没有验证码,只需要输入用户名密码,点击登录按钮),进入主页再看 Network ,这个 Cookie 里 JSESSIONID 的值还是没变过。
问题来了,我用 python
```python
session = requests.session()
params = {'username': xxx, 'password': xxx}
response1 = session.get(login_url, data=params)
response2 = session.get(login_url, data=params)
```
然后我分别打印了`response1`和`response2`的 cookie 看了一下里面的 JSESSIONID 的值,居然完全不一样,难道不应该同一个会话的 JSESSIONID 是一样的吗?
另外还有一个问题就是,我获取 cookie ,然后传给下面的代码
```python
headers = {'cookie': cookie, 'User-Agent': xxxxx, 'Host': xxxx,.....}
response =
session.post(url, headers=headers)
print(response.text)
```
如果登录成功,这个 cookie 值是有效的,那么需要登录能访问的 url ,response.text 打印出来应该是网页的内容,可是并不是,打印的结果一看就是没登录成功,很费解🤔
ps: 环境所限,不太能使用 seleinum 这样的自动化库,只能使用爬虫。请各位大佬帮忙参谋参谋是哪儿出了问题,感谢
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/984308
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.