file_get_contents() 返回错误的页面

SC0RP10N.MY7H

我正在尝试使用函数 file_get_contents($url) 来抓取一些内容。但它没有返回正确的内容。它只是返回一些脚本,我认为它们负责位置和语言检查,然后它失败并且不会继续抓取整个页面

    $url = 'https://shop.bitmain.com/';
    $exists;
    $url_headers = get_headers($url);
    if(!$url_headers || $url_headers[0] == 'HTTP/1.1 404 Not Found') {
        $exists = false;
    }
    else {
        $exists = true;
    }

    if(filter_var($url, FILTER_VALIDATE_URL) == FALSE || $exists == false) {

        $error .= '<div class="alert alert-danger" role="alert">That city could not be found.</div>';

    } else if (filter_var($url, FILTER_VALIDATE_URL) == TRUE && $exists == true){

        $html = file_get_contents($url);
        if ($html != FALSE && $html != NULL) 
            echo $html

        }
狗鼻子

file_get_contents()当涉及到加载 URL-Content 时,让我们调用一个“哑”函数。它将返回第一次加载 DOM 时呈现的内容。

要获取很多网站的实际内容,还需要遵循重定向,可以通过使用实现curl(参考:如果发生重定向,如何在file_get_contents后获取真实URL?

如果最终页面使用大量 AJAX 来加载数据,即使 curl 也不会提供所需的内容,而是一些没有实际内容的“裸”HTML 页面。


因此,如今,您需要手动加载异步内容,方法是解析初始 url 的内容、解析 JS 文件、获取 ajax-url 并再次调用它们,同时传递目标页面可能为您的请求生成的 cookie ...

或者使用“本地客户端”,它将像浏览器一样执行页面并能够返回最终数据。

只是调用file_get_contents("url");并期待相同的源代码,就好像您在浏览器中调用 url 对大多数网站不再适用一样。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

file_get_contents返回PHP代码

来自分类Dev

PHP脚本返回“ file_get_contents”

来自分类Dev

file_get_contents()处理错误消息

来自分类Dev

无法使用 file_get_contents 获取页面内容

来自分类Dev

file_get_contents在本地主机上返回false

来自分类Dev

无法使用file_get_contents(),不返回任何内容

来自分类Dev

file_get_contents()返回未知字符串

来自分类Dev

file_get_contents没有返回整个网页

来自分类Dev

file_get_contents返回特定网址的不可读文本

来自分类Dev

file_get_contents从URL返回损坏的图像

来自分类Dev

file_get_contents在本地主机上返回false

来自分类Dev

file_get_contents没有返回正确的内容

来自分类Dev

无法使用file_get_contents(),不返回任何内容

来自分类Dev

file_get_contents不会返回所有内容

来自分类Dev

file_get_contents返回特定网址的不可读文本

来自分类Dev

file_get_contents返回内容中的HTTP标头

来自分类Dev

file_get_contents 返回空字符串

来自分类Dev

PHP file_get_contents 返回 bool(false)

来自分类Dev

file_get_contents中的HTTP / 1.1 400错误请求

来自分类Dev

如何获取php file_get_contents()错误响应内容

来自分类Dev

emailOutputTo Laravel上的file_get_contents错误

来自分类Dev

错误,包括带有file_get_contents()的文件

来自分类Dev

YouTube在使用file_get_contents时给我错误

来自分类Dev

file_get_contents获取了错误的内容

来自分类Dev

如何处理file_get_contents()中的403错误?

来自分类Dev

FB Graph API 的 file_get_contents 上的 HTTP 错误

来自分类Dev

yii2项目中的file_get_contents总是返回登录页面

来自分类Dev

为什么我的POST file_get_contents返回HTTP错误请求?

来自分类Dev

使用file_get_contents获取图像,它返回“未找到”错误

Related 相关文章

  1. 1

    file_get_contents返回PHP代码

  2. 2

    PHP脚本返回“ file_get_contents”

  3. 3

    file_get_contents()处理错误消息

  4. 4

    无法使用 file_get_contents 获取页面内容

  5. 5

    file_get_contents在本地主机上返回false

  6. 6

    无法使用file_get_contents(),不返回任何内容

  7. 7

    file_get_contents()返回未知字符串

  8. 8

    file_get_contents没有返回整个网页

  9. 9

    file_get_contents返回特定网址的不可读文本

  10. 10

    file_get_contents从URL返回损坏的图像

  11. 11

    file_get_contents在本地主机上返回false

  12. 12

    file_get_contents没有返回正确的内容

  13. 13

    无法使用file_get_contents(),不返回任何内容

  14. 14

    file_get_contents不会返回所有内容

  15. 15

    file_get_contents返回特定网址的不可读文本

  16. 16

    file_get_contents返回内容中的HTTP标头

  17. 17

    file_get_contents 返回空字符串

  18. 18

    PHP file_get_contents 返回 bool(false)

  19. 19

    file_get_contents中的HTTP / 1.1 400错误请求

  20. 20

    如何获取php file_get_contents()错误响应内容

  21. 21

    emailOutputTo Laravel上的file_get_contents错误

  22. 22

    错误,包括带有file_get_contents()的文件

  23. 23

    YouTube在使用file_get_contents时给我错误

  24. 24

    file_get_contents获取了错误的内容

  25. 25

    如何处理file_get_contents()中的403错误?

  26. 26

    FB Graph API 的 file_get_contents 上的 HTTP 错误

  27. 27

    yii2项目中的file_get_contents总是返回登录页面

  28. 28

    为什么我的POST file_get_contents返回HTTP错误请求?

  29. 29

    使用file_get_contents获取图像,它返回“未找到”错误

热门标签

归档