我有一个网站抓取工具运行了很长时间,没有任何问题。最近,我相信该网站进行了更改,并且我现在遇到了 session 持久性问题。这是创建我的浏览器的代码:
def create_browser():
# Browser
br = mechanize.Browser()
# Cookie Jar
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)
# Browser options
br.set_handle_equiv(True)
br.set_handle_redirect(True)
br.set_handle_referer(True)
br.set_handle_robots(False)
br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]
return br
这是登录的代码:
def login_stubhub(br):
br.open("https://myaccount.stubhub.com/login/Signin?")
br.select_form(name="signinForm_0")
br["loginEmail"] = 'username'
br["loginPassword"] = 'password'
br.method = "POST"
response = br.submit()
当我尝试打开一个需要我登录的页面时:
br.open(https://sell.stubhub.com/sellapi/event/4459340/section/null/seatmapdata)
我收到以下回复:
<data>
<errors>
<FormErrors>
<FormField>User Auth Check</FormField>
<ErrorMessage>
Either is not active or the session might have expired. Please login again.
</ErrorMessage>
</FormErrors>
</errors>
</data>
这是我在实现 CookieJar 前一天返回的错误。知道我还能尝试修复 session 持久性吗?
谢谢!
最佳答案
错误在 48 小时左右后停止。问题似乎出在网站的后端。
关于python - Mechanize/CookieJar 不保持 session 持久性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22617900/