我习惯于创建一些爬虫来编译信息,当我来到一个网站时,我需要信息我启动一个特定于该站点的新爬虫,大多数时候使用shell脚本,有时使用PHP.
我这样做的方式是用一个简单的for
迭代的页面列表,wget
做下载和sed
,tr
,awk
或其他工具来清洁页面,抓住具体信息,我需要.
所有这些过程都需要一些时间,具体取决于网站以及更多内容以下载所有页面 我经常走进一个让一切变得复杂的AJAX网站
我想知道是否有更好的方法来做到这一点,更快的方式,甚至一些应用程序或语言来帮助这样的工作.
使用正则表达式来解析内容是一个糟糕的主意,这已经在无数次问题中得到了解决.
您应该将文档解析为DOM树,然后您可以提取所需的任何超链接,样式表,脚本文件,图像或其他外部链接,并相应地遍历它们.
许多脚本语言都有用于获取Web页面的包(例如用于PHP的curl)和用于解析HTML的包(例如,用于Python的Beautiful Soup).走那条路而不是正则表达式匹配的hackky解决方案.