需要 JavaScript 支持的页面上的 cURL 请求

use*_*748 6 javascript cookies curl spoofing web-scraping

我需要获取 pinnaclesports.com 的 HTML 源代码。问题是它检测是否启用了 cookie 和 JS,如果没有,它只返回一些页面说

本网站需要启用 JavaScript 和 Cookie。请更改您的浏览器设置或升级您的浏览器。

有什么办法可以在使用 cURL 时欺骗 JS 支持?

编辑:我可以使用作为 Perl/Ruby 模块运行或用 PHP 编写的无头浏览器

Joã*_*cal 9

其他建议是设置用户代理,这个解决方案适用于我的 Google Groups 解析器:

curl -L -v "https://groups.google.com/d/forum/<GROUP-NAME>" -A "Mozilla/5.0 (compatible;  MSIE 7.01; Windows NT 5.0)"
Run Code Online (Sandbox Code Playgroud)


Mar*_*ngh 4

我发现,如果您进行无 cookie 请求,将返回一个页面,该页面使用 javascript 来设置 cookie,即您使用curl 获得的页面。

像这样进行另一个卷曲调用

curl https://www.pinnaclesports.com/ --cookie "YPF8827340282Jdskjhfiw_928937459182JAX666=122.167.231.139"
Run Code Online (Sandbox Code Playgroud)

即您必须进行 2 个调用 1)进行 cookie less 调用、读取和正则表达式来查找 cookiename。2)设置cookie名称后发出第二个请求。这会解决你的问题。

或者
只使用 YQL

select * from html where url="https://www.pinnaclesports.com/" 
Run Code Online (Sandbox Code Playgroud)

将你的卷发指向这里

  • 我也处于同样的困境。我在那里阅读了您的解决方案,但不知道如何查找 cookie 名称以及如何在第二个curl 请求中使用它。任何这方面的帮助将不胜感激。 (2认同)