PHP file_get_contents和CURL无法获取基于javascript的页面的内容

I have tried both file_get_contents and CURL to fetch the content of a specific page. I setup the CURL to follow redirects and changed User-Agent, however, it did not work. I have no problem when loading page in browser. I get a page with below code whenever I try to fetch it with file_get_contents or CURL:

 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Loading ...</title> <script 
src="/jquery.js" type="text/javascript"></script> </head> <html> <noscript>Enable java!</noscript> <div id="status"></div> <script type="text/javascript"> 
function check(){ $.ajax({
    type: "POST",
    url: "/index.php",
    data: "allowed=5b91b80a061537ae6a23835aba38279e",
    success: function(html){if(html == "allowed"){location.reload();}},
    beforeSend:function(){
        $("#status").html("Loading ...")
    }
});
}
$(document).ready(function(){
    check();
});
</script> </html> 

Is there anyway to bypass such restriction without using Javascript based Web Scrapers like PhantomJs, CasperJs or ZombieJs? Simply using a plain PHP?

doupaoyan6083
doupaoyan6083 基本上,是的。祝好运:)
大约 5 年之前 回复
du5591
du5591 所以你的意思是我必须获取allowed=5b91b80a061537ae6a23835aba38279e并向/index.php发帖后我得到一个cookie,这将帮助我浏览当前页面和其他页面而没有负担?
大约 5 年之前 回复
doumi1912
doumi1912 好吧,基本上你发送一个POST请求到index.php。在那里,您将获得一个cookie,您将不得不使用它来继续浏览该网站。然后只需重新加载包含应用于您的请求的Cookie的页面。
大约 5 年之前 回复
douduoting8408
douduoting8408 但是,如果我去/index.php,我会得到另一个不是我想要的内容。
大约 5 年之前 回复
dra8603
dra8603 url:“/index.php”,它说
大约 5 年之前 回复
dsa45132
dsa45132 ajax页面的地址是什么?在上面的示例页面中,如何获取下一页的地址?正如您所看到的,它的类型是POST,我该如何形成一个URL?
大约 5 年之前 回复
donglao7947
donglao7947 您可以解析您正在获取的javascript的内容,并向ajax页面发出另一个CURL请求。
大约 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐