Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP从YouTube上获取统计数据_Php_Xpath_Curl_Youtube_Scrape - Fatal编程技术网

使用PHP从YouTube上获取统计数据

使用PHP从YouTube上获取统计数据,php,xpath,curl,youtube,scrape,Php,Xpath,Curl,Youtube,Scrape,经过3个小时的努力,我终于决定自己不可能或不可能做到这一点。我的问题如下: 如何使用PHP在附加图像中刮取数字,以便在网页中回显它们 图像URL: 请帮忙。我尝试了几乎所有的方法,从使用cURL到使用正则表达式,再到尝试xPath。没有什么是正确的 我只希望这些数字本身能够被隔离,分配给一个变量,然后在页面上的其他地方重复出现 更新: -我正试图获取的URL /html/body[@class='date-20121213 en_US ltr ytg-old-clearfix guide-f

经过3个小时的努力,我终于决定自己不可能或不可能做到这一点。我的问题如下:

如何使用PHP在附加图像中刮取数字,以便在网页中回显它们

图像URL:

请帮忙。我尝试了几乎所有的方法,从使用cURL到使用正则表达式,再到尝试xPath。没有什么是正确的

我只希望这些数字本身能够被隔离,分配给一个变量,然后在页面上的其他地方重复出现

更新:

-我正试图获取的URL

/html/body[@class='date-20121213 en_US ltr   ytg-old-clearfix guide-feed-v2 site-left-aligned exp-new-site-width exp-watch7-comment-ui webkit webkit-537']/div[@id='body-container']/div[@id='page-container']/div[@id='page']/div[@id='content']/div[@id='branded-page-default-bg']/div[@id='branded-page-body-container']/div[@id='branded-page-body']/div[@class='channel-tab-content channel-layout-two-column selected   blogger-template ']/div[@class='tab-content-body']/div[@class='secondary-pane']/div[@class='user-profile channel-module yt-uix-c3-module-container ']/div[@class='module-view profile-view-module']/ul[@class='section'][1]/li[@class='user-profile-item '][1]/span[@class='value']

我尝试的xPath,由于未知原因无法工作。没有抛出异常或错误,也没有显示任何内容。

也许简单的XPath更易于操作和调试

下面是一个(注意
名称末尾的空格):


如果您愿意再次尝试正则表达式,则此模式应该有效:

!Network Videos:</span>\r\n +<span class=\"value\">([\d,]+).+Views:</span>\r\n +<span class=\"value\">([\d,]+).+Subscribers:</span>\r\n +<span class=\"value\">([\d,]+)!s
!网络视频:\r\n+([\d,]+)。+视图:\r\n+([\d,]+)。+订户:\r\n+([\d,]+)!s

它用嵌入的逗号捕捉数字,然后需要去掉逗号。我不熟悉PHP,因此无法提供更完整的代码

您的xPath查询是什么?为什么不起作用?我已经用这些信息更新了原始帖子。图像识别软件。所以这个问题建议使用一个PHP工具,它可能会起作用。我不想看到图片中的数字。我想要网页上的数字,这张图片只是作为答案的参考。太好了!只要对我的设置稍加调整,我就可以将它推到数组的末尾,这样我就可以单独调用这些值:)谢谢!
% ./scrape.php

57
3,593
10,659,716
113,900
United Kingdom
!Network Videos:</span>\r\n +<span class=\"value\">([\d,]+).+Views:</span>\r\n +<span class=\"value\">([\d,]+).+Subscribers:</span>\r\n +<span class=\"value\">([\d,]+)!s