解决此网络抓取任务的最简单方法是什么?

时间:2012-10-02 15:08:29

标签: c++ python ruby-on-rails web-applications web-crawler

我目前已被分配创建一个网络抓取工具,以自动完成一些报告任务。此网络爬虫必须使用我的凭据登录,搜索不同字段中的特定内容(某些与当前日期相关),下载包含数据的CSV(如果有可用数据),快速解析CSV以获得快速编号计数,创建附有CSV的电子邮件并发送。

我目前非常了解C ++和Python,我正在学习C,但我被告知Ruby或Ruby on Rails是一个很好的方法。 Ruby on Rails是否仅用于创建Web应用程序,如果是这样,我的任务是否适合Web应用程序的描述,或者我可以创建一个运行并完成所有操作的独立程序?

我想知道哪种语言最容易编码(具有易于使用的模块),相对于这些任务有一个很好的库/模块。在完成此任务之前,我需要考虑什么?我要到12月底才能做到这一点,我每周只在这里工作大约12个小时(我是学生,这是我的实习)。这可行吗?

感谢。

3 个答案:

答案 0 :(得分:5)

你已经了解Python了。 CSV解析和邮件发送是非常简单的任务,我认为你可以用谷歌解决这些问题。

网络抓取?使用Mechanize

答案 1 :(得分:1)

添加到机械化:

如果你的页面有一个机械化无法处理的javascript组件,那么selenium会驱动一个真正的Web浏览器。如果你对使用红宝石有所帮助,你也可以使用WATIR,但是selenium同时具有ruby和python绑定。

答案 2 :(得分:0)

虽然这不是一个很好的 Stackoverflow 问题,但由于你是一名学生,并且是为了实习,所以看起来标记它或者投票都不好。 :)

基本上,您可以使用您列出的任何语言完成此任务。如果您希望将Ruby作为实习经验的一部分,那么这可能是一个伟大的项目和学习方法。但是,python也会很好用(你可以使用Mechanize)。我应该透露我是一名Python开发人员,我喜欢它。我认为这是一种很棒的语言,有很好的支持和工具。我确信Ruby的人对他们的语言有同感。再一次,我认为这是你想在实习期间想要完成的事情。你想带走什么经验,等等。祝你好运。