提问人:Makinaru 提问时间:10/28/2023 更新时间:10/31/2023 访问量:33
如何使用 GET(没有 Selenium 等)从网站检索 HTML 代码?
How to retrieve HTML code from a website using GET (without Selenium etc)?
问:
当通过 PHP 向 https://comeback.pw/cats/146x?page=1 发出 GET 请求时,我收到不同的 HTML 响应,而在常规浏览器中一切正常。可能是什么问题?
似乎有 JavaScript 内容保护。是否有可能绕过它?当我从 Chrome 复制 cURL 请求并将其导入 Postman 时,它会返回正确的数据。但是,如果我再次在 Postman 中执行相同的请求,我会收到不同的响应。可能导致此行为的原因是什么?
答:
0赞
hanif zekri
10/28/2023
#1
我用这样的简单卷曲进行测试,似乎没问题。
<?php
$url = "https://comeback.pw/cats/146x?page=1";
$ch = curl_init();
curl_setopt($ch, CURLOPT_REFERER, 'https://google.com');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($ch, CURLOPT_URL, $url);
$response = curl_exec($ch);
curl_close($ch);
print_r($response);
?>
评论
0赞
Makinaru
10/29/2023
不,它对我不起作用。我变得那样了<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="refresh" content="10;URL=/ciez2a"> </head> <body> <script type="text/javascript"> function md5cycle(e,t){var i=e[0],a=e[1],r=e[2],n=e[3];a=ii(a=ii(a=ii(a=ii(a=hh(a=hh(a=hh(a=hh(a=gg(a=gg(a=gg(a=gg(a=ff(a=ff(a=ff(a=ff(a,r=ff(r,n=ff(n,i=ff(i,a,r,n,t[0],7,-680876936),a,r,t[1],12,-389564586),i,a,t[2],17,606105819),n,i,t[3],22,-10445 25330),r=ff(r,n=ff(n,i=ff(i,a,r,n,t[4],7,-176418897),a,r,...
0赞
hanif zekri
10/29/2023
您似乎正在使用 localhost。应使用标准主机或服务器。
0赞
Daweo
10/31/2023
#2
我收到不同的 HTML 响应,而一切正常 一个普通的浏览器。可能是什么问题?
该页面具有 JavaScript,在执行后确实会更改该页面的内容。GNU 不支持 JavaScript 执行。你需要工具。我建议看看 PhantomJS,尽管我不确定它是否不是您问题标题的一部分。wget
评论