Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.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 从具有多个选项卡的HTML页面中刮取数据_Php_Jquery_Html_Web Scraping_Tabs - Fatal编程技术网

Php 从具有多个选项卡的HTML页面中刮取数据

Php 从具有多个选项卡的HTML页面中刮取数据,php,jquery,html,web-scraping,tabs,Php,Jquery,Html,Web Scraping,Tabs,我想从中提取数据。页面激活页面加载时的第一个选项卡。我对第一页“产品”选项卡上的报废数据没有问题。我需要能够在下一个选项卡(描述选项卡)上刮取数据。如何以编程方式从第一个活动选项卡移动到第二个选项卡描述选项卡。我使用php获取url的html内容,然后使用正则表达式获取所需的数据 以下是如何从url获取html页面内容: <?php $html-page-content = file_get_contents("http://m.kikuu.com/product/677925

我想从中提取数据。页面激活页面加载时的第一个选项卡。我对第一页“产品”选项卡上的报废数据没有问题。我需要能够在下一个选项卡(描述选项卡)上刮取数据。如何以编程方式从第一个活动选项卡移动到第二个选项卡描述选项卡。我使用php获取url的html内容,然后使用正则表达式获取所需的数据

以下是如何从url获取html页面内容:

<?php

$html-page-content = file_get_contents("http://m.kikuu.com/product/677925?countryId=2");

#extract data from $html-page-content using regex
# ....

从“产品”选项卡转到“说明”选项卡时,我迷失了方向。

这只适用于这个非常具体的实例

您试图抓取的网站在javascript中确实有一个对该选项卡的引用作为url

$html = file_get_contents('http://m.kikuu.com/product/677925?countryId=2');

if( preg_match('%https?://images-global\.kikuu\.com/ProductDetailToQiniu-\d+\.html%', $html, $match) === 1 )
{
  echo file_get_contents($match[0]);
}

不容易,那是肯定的。该选项卡在运行时由客户端浏览器从中加载。您可能需要刮取第一页并查找该URL结构,然后也刮取该页。是的,您是正确的。你明白我写的吗?问题是第二个url是用一些奇特的javascript公式动态创建的,我无法访问创建url的变量:url在第一页的源代码中,你必须编写一个正则表达式来查找它。不,它在第一页上不存在。我已经找过了,一个也没找到。