使用通配符和php进行抓取
Scrape with wildcards and php
我很难想象和构思刮掉这个页面:http://www.morewords.com/ends-with/aw为单词本身。给定一个URL,我想获取内容,然后生成一个php数组,其中包含列出的所有单词,在源代码中看起来像
<a href="/word/word1/">word1</a><br />
<a href="/word/word2/">word2</a><br />
<a href="/word/word3/">word3</a><br />
<a href="/word/word4/">word4</a><br />
我一直在考虑用几种方法来做这件事,如果你能帮我决定最有效的方法,我将不胜感激。此外,我很感激任何关于如何实现这一目标的建议或例子。我知道这不是非常复杂,但我可以利用你们这些高级黑客的帮助。
- 使用某种jquery
$.each()
来循环并以某种方式将它们放入JS数组,然后转录(可能很费力) - 使用一些卷曲(没有太多的卷曲经验)
- 使用一些复杂的查找和替换正则表达式。
您将其标记为PHP,因此这里是PHP解决方案:)
$dom = new DOMDocument;
$dom->loadHTMLFile('http://www.morewords.com/ends-with/aw');
$anchors = $dom->getElementsByTagName('a');
$words = array();
foreach($anchors as $anchor) {
if ($anchor->hasAttribute('href') AND preg_match('~/word/'w+/~', $anchor->getAttribute('href'))) {
$words[] = $anchor->nodeValue;
}
}
CodePad .
如果allow_url_fopen
在php.ini
中被禁用,您可以使用cURL获取HTML。
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://www.morewords.com/ends-with/aw');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$html = curl_exec($curl);
curl_close($curl);
相关文章:
- Javascript:如何从URL中抓取片段并将其写入一些PHP
- 如何使用AJAX和JSON从一个页面抓取PHP变量到另一个页面
- 我可以使用RubyonRails抓取URL的源代码吗?还是应该使用PHP
- PHP:如何基于Javascript抓取网站内容
- PHP抓取没有扩展的远程映像
- AJAX/JS:抓取多个输入字段而不刷新或点击按钮,php会回显该值
- 如何在单击按钮时在核心PHP中抓取网页特定区域的屏幕截图
- 如何使用 php 制作正则表达式以从以下代码中抓取复杂数组
- 如何使用 php 抓取基于 javascript 和 ajax 的网页数据
- 数据抓取刚刚用PHP编写的页面
- 使用 PHP 中的 cURL 抓取源代码时出现问题
- Js 数组检测:从 php 数组中找到的值数(从数据库中抓取)
- 如何使用PHP来抓取这些内容,并且只获取lat/long
- 如何在PHP中抓取需要cookie和javascript的页面
- 将变量数据从.js的一篇文章中抓取到php中
- PHP AJAX MySql抓取数据单选按钮
- 使用php抓取页面主体
- 在WordPress或PHP中抓取重定向请求源
- 从PHP文件中抓取内容,然后在JavaScript中将其转换为数组
- 抓取已经'回声'从AJAX调用到PHP