Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript python scrapy-从onclick弹出对话框中进行刮取_Javascript_Jquery_Python_Scrapy - Fatal编程技术网

Javascript python scrapy-从onclick弹出对话框中进行刮取

Javascript python scrapy-从onclick弹出对话框中进行刮取,javascript,jquery,python,scrapy,Javascript,Jquery,Python,Scrapy,我正试图从scrapy和python中删除所有视频和英文文本的链接 我让蜘蛛从所有页面上抓取所有视频URL(注意,我在编程方面毫无用处),但我不知道如何抓取成绩单。只有单击按钮后,才会弹出“转录本”对话框。在这个新的弹出窗口中可以找到成绩单的链接。我读过的所有其他教程都是address POST请求,但这似乎是一个ajax GET请求。(所以我完全不知道该怎么办)。我也看到过提到有效载荷和表单控制的帖子,但我不知道它们在这个网站上是什么 按钮单击之前页面中的相关HTML: 好的,在使用代码之后

我正试图从scrapy和python中删除所有视频和英文文本的链接

我让蜘蛛从所有页面上抓取所有视频URL(注意,我在编程方面毫无用处),但我不知道如何抓取成绩单。只有单击按钮后,才会弹出“转录本”对话框。在这个新的弹出窗口中可以找到成绩单的链接。我读过的所有其他教程都是address POST请求,但这似乎是一个ajax GET请求。(所以我完全不知道该怎么办)。我也看到过提到有效载荷和表单控制的帖子,但我不知道它们在这个网站上是什么

按钮单击之前页面中的相关HTML:


好的,在使用代码之后,我得到了一个有效的解决方案,问题是“substring”命令。它不应该放在“response.xpath”行中。我使用了另一种语法来做如下所示的事情(即获取子字符串)

非工作部件

videoid=response.xpath(“子字符串(//span[@class='media-info make cursor']/@onclick,22,5)”).extract()
对于videoid中的p:

url=”http://saltanat.org/ajax_transcription.php?vid=“+p
2种方法。您可以使用webdriver执行javascript并模拟单击按钮。或者您可以自己执行GET请求,然后解析响应。在“网络”选项卡中打开浏览器的“开发工具”,并在单击按钮时检查它正在执行的操作。请尝试在python代码中执行相同的请求。@rm4感谢您的回复,我不太喜欢使用webdriver,我已经在上面附加了我的spider代码,我尝试根据您的第二个选项执行此操作。问题是当我运行spider时没有得到任何结果