【发布时间】:2014-05-07 10:45:47
【问题描述】:
我是 ajax 和 javascript 的新手。
我正在爬取一个网站,在使用 Python (urllib2/request/mechanize) 下载网页后,我可以在 XPath 的帮助下获取相关的详细信息。
在网页中,这些是一些只有在单击链接后才能看到的信息。该链接调用XHR 来获取我使用firefox 的Web 开发工具发现的详细信息。 (Ctrl+Shift+Q 或Tools >> Web Developer >> Network)我正在显示该链接及其使用 Firefox Web 开发人员工具可以看到的 javascript 属性(Ctrl+Shift+C 或Tools >> Web Developer >> Inspector)在粗黑色矩形下方的附加图像中。
我还可以通过相同的 firefox Web 开发工具查看 ajax 请求 url、标头、响应和参数。在http://i.stack.imgur.com/9jhfr.png 可以看到相同的图像
我认为我拥有POST 请求的所有有效负载。如何在 request/urllib2 等的帮助下使用 Python 进行 http post 调用?因此,作为回应,我可以在单击该链接后看到我在网页中显示的详细信息。点赞requests.get(url, data=<paramter_to_post which i can see in firefox>, headers=<request headers that I can see in firefox>)
我做空了
如何使用python模拟ajax调用?或者如何获取点击该链接后我看到的信息?
我可以使用Selenium/PhantomJS 或其他headless 浏览器自动执行此任务。但我想使用 HTTP Post 和 Get 来解决这个问题,当我点击链接时,这正是在 Firefox 中发生的。
【问题讨论】:
标签: python ajax xmlhttprequest web-scraping