谁能告诉我在PHP屏幕抓取使用POST请求aspx页面的过程?我想从一个网站下载数据并保存到数据库。
一般步骤,无论两侧使用何种技术:
- 通过HTTP下载目标页面(通常使用libcurl) 解析下载的文件
- 提取您感兴趣的部分
- 将提取的数据存储在数据库中。
根据给定的信息,这几乎是所有人都能告诉你的。
下载文件:
$file = file_get_contents('http://www.google.com');
如果是XML文件或json文件,将其分解成一个数组,然后使用
搜索你想要的值$key = array_search('search term', $array);
this将返回您正在查找的数组的键,因此它将是$array[$key]。但是如果它是一个HTML页面,你可以很容易地使用这个函数来搜索下载的页面:
function extractStringFromString ($string, $start, $end) {
$startPos = strpos($string,$start);
$stringEndTagPos = strpos($string,$end,$startPos);
$stringBetween = substr($string,$startPos+strlen($start),$stringEndTagPos-$startPos-strlen($start));
if (strlen($stringBetween) != 0) {
return $stringBetween;
return true;
}
else {
return false;
}
}
你可以像$returnString = extractStringFromString($file, '$start', '$end'
一样使用这个函数,$start是你正在寻找的东西的开始,使用$end来结束搜索,所以如果你有<div id="someID">here is some text</div>
, $start
将等于<div id="someID">
和$end = '</div>'
, $returnString
将等于"here is some text"。
INSERT INTO table_name (column1, column2, column3,...)
VALUES (value1, value2, value3,...)
如果还有什么问题请告诉我