- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
问题 :
无法完全理解 Goutte 网络爬虫。
请求 :
有人可以帮助我理解或提供代码来帮助我更好地理解如何使用 Goutte 网络抓取工具吗?我已经阅读了 README.md。我正在寻找比提供的信息更多的信息,例如 Goutte 中可用的选项以及如何编写这些选项,或者当您查看表单时,您是否搜索表单的 name= 或 id=?
试图抓取网页布局 :
步骤 1 :
该网页有一个表格,有一个单选按钮,用于选择要填写的表格类型(即名称或许可证)。它默认为带有名字和姓氏文本框的名称以及状态下拉菜单选择列表。如果您选择 Radio,则 jQuery 或 JavaScript 会使名字和姓氏文本框消失并出现许可证文本框。
步骤 2 :
成功提交表单后,它会将您带到一个包含多个链接的页面。我们可以进入其中的两个来获取我们需要的信息。
步骤 3 :
一旦我们成功点击了链接,我们希望第三页包含我们正在寻找的数据,我们希望将该数据存储到一个 php 变量中。
提交错误信息 :
如果提交了错误的信息,那么 jQuery/Javascript 会返回一条消息
“没有找到记录。”在与提交相同的页面上。
备注 :
首选方法是选择许可证单选按钮,填写许可证编号,选择州,然后提交表格。我已经阅读了大量关于 Goutte 的帖子和博客以及其他项目,但我无法找到 Goutte 的可用选项、如何找到这些信息或如何使用这些信息(如果确实存在)。
最佳答案
您要查看的文档是 Symfony2 DomCrawler .
Goutte 是建立在 Guzzle 之上的客户端每次请求/提交内容时都会返回爬虫:
use Goutte\Client;
$client = new Client();
$crawler = $client->request('GET', 'http://www.symfony-project.org/');
$nodeValues = $crawler->filter('body > p')->each(function (Crawler $node, $i) {
return $node->text();
});
print_r($nodeValues);
$form = $crawler->selectButton('sign in')->form();
$crawler = $client->submit($form, array(
'username' => 'username',
'password' => 'xxxxxx'
));
A selectButton() method is available on the Crawler which returns another Crawler that matches a button (input[type=submit], input[type=image], or a button) with the given text. [1]
html
或
text
方法
echo $crawler->html();
echo $crawler->text();
关于web-crawler - 如何使用Goutte,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15628926/
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 8年前关闭。 Improve this q
我最近在准备面试时读了一本书,并遇到了以下问题: 当你的爬虫遇到一个蜜 jar 并生成一个无限子图供你漫步时,你会怎么做? 我想找到这个问题的一些解决方案。就我个人而言,我会采用某种形式的深度有限搜索
我需要抓取一千个共享相同结构的网站:它们都有一个菜单、一个标题、一些文本和一个评级,很像一个博客。不幸的是,它们的编码也非常不同,有些是手动的,所以我不能重新利用 CSS 选择器,甚至可能不依赖它们。
我正在尝试抓取大约一千个网站,其中我只对 html 内容感兴趣。 然后我将 HTML 转换为 XML 以使用 Xpath 进行解析以提取我感兴趣的特定内容。 我已经使用 Heritrix 2.0 爬虫
我想从某些网站抓取有用的资源(如背景图片..)。这不是一项艰巨的工作,尤其是在一些很棒的项目(如scrapy)的帮助下。 这里的问题是我不仅只想抓取这个网站一次。我还想保持我的爬网长时间运行并爬网更新
我是 Nutch 的新手。我需要抓取网页(比如几百个网页),读取抓取的数据并进行一些分析。 我点击了链接 https://wiki.apache.org/nutch/NutchTutorial (并且
我要爬一个网站以获取一些信息。它大约有 170 000 多页。那么,我可以提出多少请求?我要提取直到 HTML 并获取一些信息。这是一个已经很受欢迎的网站,所以我认为如果只是快速浏览所有页面它不会死.
我正在构建一个小型应用程序,它将抓取内容不断增长的站点(如在 stackoverflow 上),不同之处在于一旦创建的内容很少被修改。 现在,在第一遍中,我抓取了站点中的所有页面。 但接下来,该站点的
我在比较这四个 Nutch/Heritrix/OpenPipeLine/Apache Tika 哪一个最好?各自的优缺点是什么? 我想要一些可扩展的爬虫,它可以爬取网站列表,并且可以根据需要进行修改。
正如标题所说,我一直在努力爬取文章,剩下的就是作者。 下面是我的代码,使用pyquery编译段落和作者,只有作者返回空白 目标站点:http://business.transworld.net/153
我正在为旅游搜索引擎考虑一些想法,我想知道这些网站是如何获取它们的源数据的。他们是否从航空公司主页上抓取了所有内容?考虑到航空公司等的数量,这似乎是一项艰巨的工作。 是否有每个航空公司也遵守的 API
我正在测试一个新的网络爬虫,我正在寻找一些可能会绊倒它的好网站(重定向、框架、任何东西)。有人知道一些非常复杂的网站,或者可能会出错的网站吗?谢谢 最佳答案 如果你在 Alexa 前 1000 名左右
有一种方法可以从 google 的索引中排除完整的页面。但是有没有办法专门从谷歌的抓取中排除网页的某些部分?例如,排除通常包含不相关内容的侧边栏? 最佳答案 您可以使用 IFRAME 标记包含要在 G
给定一个起始 URL start (以及关于可允许域等的一些规则)我想生成一个有向图(V,E),其中 V 中的节点是否可以从 start 访问页面,并且有一条弧线 (u,v)在 E每当页面上有超链接时
我正在开发一个Web爬网程序,该爬网程序可以为不想被索引的网站编制索引。 我的第一次尝试: 我编写了一个C#搜寻器,它遍历每个页面并下载它们。 这导致我的IP在10分钟内被其服务器阻塞。 我将其移至A
我想知道用于抓取和分析网站的最佳 eopen-source 库是什么。一个例子是爬虫属性(property)机构,我想从多个站点获取信息并将它们聚合到我自己的站点中。为此,我需要抓取网站并提取属性(p
Builtwith.com 和类似服务提供(收费)使用特定技术(如 SalesForce 或 NationBuilder)构建的域列表。有一些我感兴趣的技术 builtwith 没有扫描,可能是因为它
我正在使用scrapy 来抓取站点上的多个页面。 变量 start_urls用于定义要抓取的页面。 我最初会从第一页开始,从而定义 start_urls = [1st page]在文件中 exampl
关闭。这个问题需要更多 focused .它目前不接受答案。 想改进这个问题?更新问题,使其仅关注一个问题 editing this post . 8年前关闭。 Improve this questi
我有一个实现无限滚动的网站:当用户到达页面末尾时,会进行 AJAX 调用并将新内容附加到页面底部。然而,这意味着搜索爬虫无法获取第一个“分页符”之后的所有内容。例如,我有一个页面列出了所有带有“信息图
我是一名优秀的程序员,十分优秀!