Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 具有不同布局的网站抓取(经用户同意)_Ruby On Rails 3_Nokogiri_Web Scraping - Fatal编程技术网

Ruby on rails 3 具有不同布局的网站抓取(经用户同意)

Ruby on rails 3 具有不同布局的网站抓取(经用户同意),ruby-on-rails-3,nokogiri,web-scraping,Ruby On Rails 3,Nokogiri,Web Scraping,我有一个网站,用户可以在上面发布博客文章,他们可以自己写,但我也想给他们一个选项,从他们可能已经有的博客网站导入他们现有的文章(不用担心,只有用户自己会上传他们自己的内容,如果他们选择这样做)。然而,现在的主要问题是,每个用户都可以自定义他/她的博客外观,这意味着即使两个用户都使用同一个站点(例如blogspot或wordpress),也可以有完全不同的布局和div命名。 有没有办法用“泛型”方法或其他方法来刮取这些条目 在任何人建议RSS之前,我已经尝试过了,但我希望整个条目都上传到我的网站上

我有一个网站,用户可以在上面发布博客文章,他们可以自己写,但我也想给他们一个选项,从他们可能已经有的博客网站导入他们现有的文章(不用担心,只有用户自己会上传他们自己的内容,如果他们选择这样做)。然而,现在的主要问题是,每个用户都可以自定义他/她的博客外观,这意味着即使两个用户都使用同一个站点(例如blogspot或wordpress),也可以有完全不同的布局和div命名。 有没有办法用“泛型”方法或其他方法来刮取这些条目

在任何人建议RSS之前,我已经尝试过了,但我希望整个条目都上传到我的网站上,而且只有blogspot像那样在RSS中存储它们,而且,用户将选择上传哪个条目,而不是整个博客,这意味着他们可以从很久以前选择一个条目,RSS不再存储哪个条目


我正在使用Ruby on Rails 3,到目前为止,我已经尝试过使用Nokogiri进行抓取。

有一个专门为Web垃圾服务编写的宝石,它是。
这很简单,也很有用。这和一些恶作剧应该可以做到这一点。

Wordpress在管理控制台中有一个“导出”选项,blogspot可能也有类似的选项。它导出为XML,因此您仍然可以使用Nokogiri。应该比实际的网站抓取更加标准化。这是非常有用的,blogspot也有它,但是我希望能够支持尽可能多的不同的博客。此外,通过抓取,用户只需复制一个链接并粘贴到我的网站上,应用程序就可以完成其余的工作。我已经在使用gem进行抓取,Nokogiri,可以轻松抓取具有固定布局的网站,但我的问题是,用户可以拥有非常无用的布局。最好的版本在div中包含id为“entry”的内容,标题在header中包含id为“entry title”的标题,这很容易抓取,但有些版本没有任何东西可以真正帮助我区分不同的组件,这就是我的问题。