- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我使用 Laravel 5.2 进行网络抓取元标记,但我遇到了 get_meta_tags()
问题。
循环 get_meta_tags()
似乎存在超时和/或 cURL 问题。
以此为例
$urls = ['http://google.com', 'http://yahoo.com', ...];
foreach ($urls as $value) {
$meta = get_meta_tags($value);
}
假设我在 $urls
数组下有 10 个值,然后为 get_meta_tags()
做一个循环。它在性能方面会有任何问题吗?这是因为我在显示的随机 URL 上出现间歇性错误:
get_meta_tags(): php_network_getaddresses: getaddrinfo failed: This is usually a temporary error during hostname resolution and means that the local server did not receive a response from an authoritative server.
或者有时
cURL error 60: SSL certificate problem: unable to get local issuer certificate (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)
但是当我一个接一个地获取元标记时:get_meta_tags('http://google.com')
而不是在循环内,我能够成功检索。
而且由于我正在进行批量网络抓取,因此我必须执行一个以 10 秒为单位的循环。
我什至设置:
ini_set('max_execution_time', 300);
ini_set('default_socket_timeout', 10);
我也在用 Goutte用于网络抓取 DOM(链接、标题、h1)。由于我无法使用 Goutte 获取元标记,因此我改用 get_meta_tags()
。但是,如果 Goutte 能够在循环内毫无问题地获取元标记,那就太好了。
最佳答案
你的错误不是你的代码的错 :P
此代码有效:
<?php
$urls = ['http://google.com', 'http://yahoo.com'];
foreach ($urls as $value) {
$meta = get_meta_tags($value);
print_r($meta);
}
?>
你的错误:
get_meta_tags(): php_network_getaddresses: getaddrinfo failed: 这通常是主机名解析期间的临时错误,意味着本地服务器没有收到来自权威服务器的响应。
这通常发生在您无法连接到您的 DNS(即无法解析网站名称)时。此问题通常是由 Apache/PHP 主机无法联系 DNS 服务器引起的。这可能由于各种其他原因而发生,例如 ISP 问题、配置问题等(其中一些是错误本身所述的临时问题)。
修复此问题:Fix: php_network_getaddresses: getaddrinfo failed: Name or service not known
cURL 错误 60:SSL 证书问题:无法获取本地颁发者证书(请参阅 http://curl.haxx.se/libcurl/c/libcurl-errors.html)
修复此错误:SSL Error: unable to get local issuer certificate
阅读:
关于PHP Laravel 网络抓取 get_meta_tags,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34550408/
我在脚本中使用 get_meta_tags() 并在某些 URL 上失败(例如)... 警告:get_meta_tags(http://www.kodak.com/) [function.get-me
我想获取元标记(特别是 og:title、og:description 和 og:image) 我使用以下代码: $tags = get_meta_tags('https://www.shoutmel
我想获取元标记(特别是 og:title、og:description 和 og:image) 我使用以下代码: $tags = get_meta_tags('https://www.shoutmel
我正在尝试使用 get_meta_tags 函数来获取 url 的元信息。它无法给我来自相同来源或域的 url 的元信息。 就像我在 Controller 上做的一样http://example.co
定义和用法: get_meta_tags — 从一个文件中提取所有的 meta 标签 content 属性,返回一个数组 语法: 复制代码 代码如下: array
我使用 Laravel 5.2 进行网络抓取元标记,但我遇到了 get_meta_tags() 问题。 循环 get_meta_tags() 似乎存在超时和/或 cURL 问题。 以此为例 $urls
我正在尝试使用 get_meta_tags() 函数使用 PHP 获取 HTML 元标记。我对表、字符集/排序规则、MySQL 和其他所有内容的连接字符集使用 UTF8。 但不幸的是,MySQL 在插
因此 php 的 get_meta_tags 会获取具有名称字段的元标记,但有时有些元标记没有字段,但使用 property=""作为标识符,而此函数不会获取它.... 是否有更好的方法来获取元标记,
我想从 url 中提取元标记,尤其是标题和描述,但我不知道该怎么做。我试过 http://nodejs.org/docs/v0.4.2/api/http.html#http.request但我收到类似
PHP get_meta_tags. 是否有等效的 ruby/RoR 方法? 我正在寻找读取给定 url 的元标记信息 最佳答案 您可以尝试使用 Hpricot并做类似的事情: doc = Hpr
在 PHP 中,我使用 get_meta_tags() 和 get_headers(),但是,当出现 404 时,这两个函数会抛出警告。我有什么办法可以捕获它吗?谢谢! 最佳答案 get_header
我一直在使用 get_meta_tags() 和 get_headers() PHP 函数,并且需要设置超时值以防网站运行缓慢或无响应。有谁知道该怎么做? 最佳答案 您应该能够使用 default_s
我正在尝试使用 user contributed notes 中的代码在 php.net 上的 get_meta_tags功能。从表面上看,如果元标记的格式为 那么代码将错过它。目前,只有格式为 的
我是一名优秀的程序员,十分优秀!