【发布时间】:2014-10-03 17:02:22
【问题描述】:
我知道如何使用 Python 请求网站并阅读其文本。过去,我曾尝试使用 BeautifulSoup 之类的库来向网站上的链接发出所有请求,但这并没有得到看起来不像完整 url 的东西,例如 AJAX 请求和大多数对原始域(因为“http://example.com”会丢失,更重要的是,它不是<a href='url'>Link</a>格式,所以 BeautifulSoup 会丢失)。
如何在 Python 中加载网站的所有资源?它是否需要与 Selenium 之类的东西进行交互,或者如果没有它,是否有一种不太难实现的方法?我没怎么用过 Selenium,所以我不确定这会有多难。
谢谢
【问题讨论】:
-
点击
Ctrl/Command + S(保存菜单项)后,您想像浏览器一样下载完整的网页吗? -
这样就行了!我想我可能刚刚使用下面的方法找到了它(很高兴听到其他选项,我希望我有从...中找到它的链接):
import urllib2 url = 'http://example.com' headers = {'User-Agent' : 'Mozilla/5.0'} request = urllib2.Request(url,None,headers) sock = urllib2.urlopen(request) ch = sock.read() sock.close() -
抱歉,结果不如我所愿。没有新行。
-
当然,python+selenium,正如你标记的那样。
-
糟糕,无需发布解决方案:基本上就是这样:stackoverflow.com/questions/14516590/…。
标签: python selenium beautifulsoup urllib2 python-requests