以类似于谷歌机器人的方式抓取网站html和javascript
Crawling a sites html and javascript in a similar fashion to Google bot
我试图通过跟踪所有内部链接自动抓取给定的网站,为此我一直在玩Python mechanize
库,尽管这不允许我使用javascript和ajax内容。
谷歌机器人和其他主要搜索引擎蜘蛛/机器人是如何做到这一点的,在这种情况下,是否有其他工具可以补充mechanize
?
我知道我可以对javascript进行逆向工程,以确定它的作用,他们也会模仿它,但我想自动化抓取,所以如果我首先必须梳理每个站点的javascript,这将是不现实的。
要实现这样一个大蜘蛛,在实现它之前需要解决一些问题:
-
只想自动关注页面中的所有链接吗
这很容易。当您获取一个页面时,解析它并在所有<a>
标记中获得href
值,然后发出这些新URL的请求
如果你不想硬编码,scratchy的CrawlSpider会自动完成这项工作。使用请求和lxml也很容易完成这项工作
这是一个很容易解决的问题 -
想要解析javascript语句吗
这是一个大问题,但有一些好的工具可以使用,例如PhantomJS和类似的工具,qtwebkit和selenium
我不知道谷歌是如何处理这些问题的,但另一种高级方法是修改Chromium或Firefox的核心。这有点难,但可能会在很大程度上提高蜘蛛的效率 -
实现这样一个spider的目的是什么
抓取页面来做像谷歌这样的搜索引擎?抓取一些文章、书籍或视频供个人使用?当你知道你想用蜘蛛做什么时,你就知道如何实现它
在对网站进行爬网时会出现一些问题,这可能会帮助您实现一个健壮的spider。在这里。
相关文章:
- 什么更好?使用iframe或jQuery之类的东西在外部网站中加载HTML文件
- 在向下滚动JS/HTML/CSS wordpress网站时替换徽标图像
- 如何重定向到我的html网站youtube嵌入视频打开在youtube应用程序
- Disqus的计数.js脚本在索引中无法正常运行.html与react.js网站
- 我制作html网站的一小部分——我有一个javascript部分
- Html抓取网站加载错误的J汤Java
- 在你离开之前,这个网站如何显示一个整洁的HTML框
- 在网站HTML页面上搜索文本
- HTML按钮的作用类似于从键盘按下的键,并在某些对象或整个网站上起作用
- 使用HTML和任何服务器端语言(PHP,.net,ruby)制作的网站是否可以在每个具有浏览器的设备上工作
- Html+javascript处理网站中的语言
- 以类似于谷歌机器人的方式抓取网站html和javascript
- 谷歌脚本-从网站论坛解析HTML-并将数据写入工作表
- Phonegap兼容代码,可在网站HTML/JS页面中播放声音
- 多语言网站(HTML / javascript)
- 谷歌网站HTML框是't识别CSS或Javascript
- 谷歌网站HTML Iframe(不是小工具)
- 如何使用jquery加载网站HTML
- 铁拳7网站html隐藏代码行
- GreaseMonkey用于删除网站HTML部分的UserScript