我对使用Xpaths和Google表格功能IMPORTXML(URL; Xpath)从具有多个搜索结果页面的URL进行网络抓取有疑问: 我要从中提取数据(特别是每个结果的链接)的页面是:
为阐明我的解释,我通过链接附加了几张图片:
Webpage elements to get (list of links)
Number of results to display, at the bottom of the webpage
要获取链接,我尝试使用以下Xpath:
//td[@class='msDataText gridFundName Shrink']/a/@href
在页面底部,您可以选择要显示的结果数,但是可以选择不同数量的要显示的结果,也可以选择高级URL,但URL不变。
由于无论显示的结果数目如何,URL都不会改变,并且页码我仅使用IMPORTXML()获得前20个结果。这些是我的疑问:
非常感谢您能提供的任何帮助。谢谢
答案 0 :(得分:0)
该网站似乎使用了动态导航系统,通过单击该表的下一个/上一个分页结果可以加载新元素,而无需更改URL,即在后台通过AJAX调用按需加载内容。
浏览器自动化(尤其是Selenium)是此处的常规建议,因为它使您可以在不模拟加载新内容所需的AJAX调用的情况下剪贴数据。可以对Selenium进行编程,使其根据需要多次单击下一个按钮,以获取站点上所有可用的页面并获取数据。显然,这需要一些编程。我不知道你的喜好是什么。许多人都使用question中所示的Python。