我正在rails中开发一个应用程序,它需要检查输入的网站是否生成了搜索引擎友好的URL。我想到的一个解决方案是使用nokogiri来解析网站的HTML并在链接标记中查找查找URL并查看它们是否对搜索引擎友好。是否有任何其他方法可以做到这一点?任何帮助都会非常有用。 最佳答案 这里有两个问题:您如何正式(以编程方式)定义“搜索引擎友好URL是什么”。我假设你已经有一些方法可以做到这一点。所以剩下...如何检查网站上的所有链接。所以对于(2),我会看类似Anemone的内容这将使您轻松抓取完整的网站:AnemoneisaRubylibr
我正在使用Anemone将抓取的页面存储到MongoDB中。它主要工作,除了当我从MongoDB检索页面时访问页面标题。当我调用collection.find_one("http://stackoverflow.com")我将从数据存储中获取正确的对象,但无法访问header。Anemone将header存储为哈希,因此理论上,在检索文档后,我应该能够执行类似document["headers"]["content-type"]但这行不通,因为document["headers"]是一个BSON::Binary。putsdocument["headers"]显示文本和二进制字符的混合。
我有一个抓取设置:require'anemone'Anemone.crawl("http://www.website.co.uk",:depth_limit=>1)do|anemone|anemone.on_every_pagedo|page|putspage.urlendend但是我希望蜘蛛程序在它访问的每个URL上使用Google分析反跟踪标签,而不一定真的点击链接。我可以使用蜘蛛一次并存储所有URL并使用WATIR通过添加标签来运行它们,但我想避免这种情况,因为它很慢,而且我喜欢skip_links_like和页面深度功能。我该如何实现? 最佳答案
我正在创建某种网络爬虫,当我使用没有存储空间的Anemone来爬网网站时,它最终会因内存问题而崩溃。所以我安装了Redis、redis-rb等,并更改了我的代码以使用redis存储。现在我从rails收到一个错误,它没有完成抓取。它确实连接到Redis,因为我在监视它时可以看到事件,但它停止了抓取。我确实测试了redis,它工作正常......有什么想法吗???错误RuntimeError(-ERRwrongnumberofargumentsfor'hgetall'command):/usr/lib/ruby/gems/1.8/gems/ezmobius-redis-rb-0.1/li
假设我正在尝试抓取一个网站并跳过这样结束的页面:http://HIDDENWEBSITE.com/anonimize/index.php?page=press_and_news&subpage=20060117我目前正在使用Ruby中的Anemonegem来构建爬虫。我正在使用skip_links_like方法,但我的模式似乎永远不匹配。我试图使它尽可能通用,因此它不依赖于子页面,而仅依赖于=2105925(数字)。我已经尝试过/=\d+$/和/\?.*\d+$/但它似乎没有用。这类似于Skippingweb-pageswithextensionpdf,zipfromcrawlingi
在下面的示例中,我希望anemone仅在根URL(example.com)上执行。我不确定是否应该应用on_page_like方法,如果是的话我需要什么模式。require'anemone'Anemone.crawl("http://www.example.com/")do|anemone|anemone.on_pages_like(???)do|page|#somecodetoexecuteendend 最佳答案 require'anemone'Anemone.crawl("http://www.example.com/",:de
我正在使用anemonegem(Ruby-1.8.7和Rails3.1.1)开发爬虫。我应该如何从抓取/下载中跳过带有扩展名pdf、doc、zip等的网页。 最佳答案 ext=%w(flvswfpngjpggifasxziprartar7zgzjarjscssdtdxsdicorawmp3mp4wavwmvapeaacac3wmaaiffmpgmpegavimovoggmkvmkaasxasfmp2m1vm3uf4vpdfdocxlspptppsbinexerssxml)Anemone.crawl(url)do|anemone|an
我的起始页为http://www.example.com/startpage它有1220个列表,按标准方式分页,例如每页20个结果。我有代码可以解析结果的第一页,并跟踪在其url中包含“example_guide/paris_shops”的链接。然后我使用Nokogiri提取最后一页的特定数据。一切正常,20个结果写入文件。但是我似乎无法弄清楚如何让Anemone爬到下一页结果(http://www.example.com/startpage?page=2)然后继续解析该页面并然后是第3页(http://www.example.com/startpage?page=3)等等。所以我想问