首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我如何用Ruby写一个网络爬行器?

我如何用Ruby写一个网络爬行器?
EN

Stack Overflow用户
提问于 2011-05-10 16:12:52
回答 5查看 11.9K关注 0票数 18

我想抓取一个没有API的流行站点(比如Quora),获取一些特定的信息,并将其转储到一个文件中--比如csv、.txt或.html,这些文件的格式很好:)

例如,只返回Quora用户的所有‘Bio’的列表,这些用户在他们的公开信息中列出了职业'UX designer‘。

我该如何在Ruby中做到这一点?

我对Ruby和Rails的工作原理有一定程度的了解。我刚刚完成了一个Rails应用--主要都是我自己写的。但我不是任何想象力延伸的大师。

我理解RegExs等。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-05-10 16:16:39

你最好的选择是使用Mechanize.It可以跟踪链接,提交表单,任何你需要的东西,web客户端。顺便说一下,不要使用正则表达式来解析HTML。使用HTML解析器。

票数 21
EN

Stack Overflow用户

发布于 2012-02-07 12:08:53

如果你想要更高层次的东西,可以试试wombat,这是我在Mechanize和Nokogiri之上构建的宝石。它能够使用非常简单和高级的DSL来解析页面和跟踪链接。

票数 7
EN

Stack Overflow用户

发布于 2011-05-10 22:39:29

我知道答案已经被接受了,但是Hpricot在解析超文本标记语言方面也非常流行。

您所要做的就是查看页面的html源代码,并尝试找到与所需元素匹配的XPath或CSS表达式,然后使用如下内容:

代码语言:javascript
复制
doc.search("//p[@class='posted']")
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5947096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档