0

我遇到了一个不幸的是我似乎无法超越的问题,不幸的是,我也只是 Ruby on rails 的新手,因此问题的数量

我正在尝试抓取如下网页:

http://www.yellowpages.com.mt/Malta/Grocers-Mini-Markets-Retail-In-Malta-Gozo.aspx

我想抓取下一页的地址、电话和 URL,在这种情况下是

http://www.yellowpages.com.mt/Malta/Grocers-Mini-Markets-Retail-In-Malta-Gozo+Ismol.aspx

我一直在尝试任何我能想到的东西,但似乎没有任何效果,因为它们被设置为不可见左右。

地址在h3标记内,但似乎不可废弃。我也一直在从以下 url 研究 ScRUBYt http://www.rubyrailways.com/ajax-scraping-with-scrubyt-linkedin-google-analytics-yahoo-suggestions/,但我似乎真的找不到在这种情况下如何应用它们的正面或反面。

我真的很感激任何指示,因为这是我真正需要克服的障碍才能继续完成我的任务。提前感谢您的帮助。

4

3 回答 3

1

在您给出的特定示例中,元素不是隐藏的,而是在页面加载后通过 ajax 加载的。所以基本上你需要的是一个 http 客户端,它可以运行 javascript(网络浏览器?)来查看这些地址和其他内容。

如果您想真正自动化该过程并抓取通过 ajax 或 javascript 获得的数据,您可以尝试selenium。尽管它不是为此目的而开发的,但它可以满足您的需求。

于 2009-11-13T08:44:57.927 回答
0

我没有你的具体问题的答案,但我想我会指出 Ryan Bates 在屏幕上用 ruby​​ 抓取的 Railscast 剧集:http ://railscasts.com/episodes/173-screen-scraping-with-scrapi

他使用名为 scrAPI 的库而不是 ScRUBYt,因为他无法让 ScRUBYt 工作。scrAPI 似乎更容易一些?

我希望这会有所帮助,祝你的作业好运!:)

-约翰

于 2009-11-12T16:02:16.713 回答
-1

google group上有一个很好的脚本。它似乎提取地址等。您可能需要查看脚本的代码page.txt

于 2009-11-28T18:01:13.500 回答