我在Python中使用urllib2
,我正在尝试从以下网址下载新闻报道列表:http://web.tmxmoney.com/news.php?qm_symbol=CM
但是,当我尝试从以下位置下载时,这是有效的: http://web.tmxmoney.com/news.php?qm_symbol=CM#qmpage2(以及后续页面),结果始终与第一页相同。
我使用以下命令将数据加载到字符串中:
contents = urllib2.urlopen(url).read()
我不确定如何将数据加载到后台的php页面中,但它似乎在加载后稍微发生,而不是作为直接查询给出在URL中发布的请求。
我已尝试time.sleep()
并使用urllib2.Request()
和.urlopen()
尝试在网页加载时捕获更改,但没有成功。
有谁知道如何让urllib2
在后续页面上获取内容#qmpage2,#qmpage3,...?
答案 0 :(得分:1)
从检查页面看,似乎每个请求都会呈现所有新闻页面;页码的哈希值似乎触发了javascript,它决定了哪个“页面”的新闻被显示。您应该能够通过一个请求访问所有新闻报道(使用BeautifulSoup,您可以获取包含news = contents.find_all(class_="newsheadlines")
所有新闻页面的包含元素,并从那里解析单个页面。