[英]Python scrape page with unchanging URL and JS links
有没有什么办法可以超越本文的第一页:
https://www.sportstats.ca/display-results.xhtml?raceid=23666
我过去曾经尝试过Selenium,并且取得了不同程度的成功。 我发现它很重,有时不起作用,有时会挂起。 如果可能的话,我宁愿避免使用它,而只是使用urllib.request并对标头/ cookie进行一些操作以找到我想要的数据。
这些是障碍:
1)转到其他页面时,URL不变。
2)转到下一页的链接(例如)是JS之类的,并且不易处理:
<li><a id="mainForm:j_idt341" href="#" class="ui-commandlink ui-widget fa fa-angle-right" onclick="PrimeFaces.ab({s:"mainForm:j_idt341",p:"mainForm",u:"mainForm:result_table mainForm:pageNav mainForm:eventAthleteDetailsDialog",onco:function(xhr,status,args){hideDetails('athlete-popup');showDetails('event-popup');scrollToTopOfElement('mainForm\\:result_table');;}});return false;"></a>
谁能指出我正确的方向来浏览此页面并刮擦每一页。
我认为您可以使用Selenium做到这一点,而无需费心。 按钮的ID遵循递增的模式“ mainForm:j_idt336: 0 :j_idt338”。 您可以从Selenium中找到带有ID的按钮,也可以将“>”按钮单独移动,也可以使用ID。 id似乎是通过某种方式生成的,但是您可以使您的硒脚本以该格式为参数,并创建另一个脚本以获取该id格式。 也看一下机械化 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.