【发布时间】:2021-11-03 14:10:21
【问题描述】:
我正在尝试使用 python 中的获取请求来读取网页。 原始 URL 为 given here。我发现我感兴趣的信息在一个带有this URL的子页面中(我将真实性令牌替换为XXX)。
我尝试在脚本中使用第二个 URL,但出现 406 错误。你能建议我做错了什么吗?是防止刮擦的真实性令牌吗?如果是这样,我可以解决它吗?
import urllib.request
url = ...
agent={'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.3'}
req = urllib.request.Request(url,headers=agent)
data = urllib.request.urlopen(req)
谢谢!
PS,这是我使用 Chrome 获取 URL 的方式:
首先我浏览到https://www.goodreads.com/book/show/385228.On_Liberty
然后我打开 Chrome 的开发者工具:三个点 -> 更多工具 -> 开发者工具。选择网络标签。
然后我转到页面底部(就在最后一次审查之后)并点击“下一步”。
在工具窗口中选择请求,在标题中我得到请求 URL:https://www.goodreads.com/book/reviews/385228?csm_scope=&hide_last_page=true&language_code=en&page=2&authenticity_token=XXX
【问题讨论】:
-
能否请您附上您使用的网址?您可以将令牌替换为其他字符串
-
这是我使用 Chrome 获取 URL 的方式:首先我浏览到 goodreads.com/book/show/385228.On_Liberty 然后我打开 Chrome 的开发者工具:(三个点 -> 更多工具 -> 开发者工具。选择网络选项卡。然后我转到页面底部(就在最后一次审查之后)并单击“下一步”。在工具窗口中选择请求,在标题中我得到请求 URL:goodreads.com/book/reviews/…
标签: python authentication urllib