油猴爬虫方案

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了油猴爬虫方案相关的知识,希望对你有一定的参考价值。

参考技术A 目前很多知名的网站都增加一些反爬虫手段,使得编写爬虫时并不那么理想,有些网站很难破解其反爬技术。如利用puppeteer技术操作页面时,往往出现一些加载异常,容易被网站检测程序探测到而拒绝响应。

浏览器扩展程序油猴(tampermonkey)似乎可以做很多事件,对分析网页与事件处理有大的能力空间。由于油猴是在用户手动打开的浏览器下运行的,完全是与真人操作类似,可能不那么容易被检测到。

思路是这样的:

第一步:人工启动浏览器,导航到要抓取数据的页面;(这一步是唯一人工干扰的)

第二步:油猴自动启动,分析页面,处理页面数据;

第三步:将获得的数据通过GM_xmlhttpRequest接口推送到后台数据接收服务,将数据入库;

第三步:获得“下一页”标签元素,触发下一页请求;返回第二步重复运行;

第四步:没有“下一页”时,程序退出。

上述方案的缺点很明显,那就是第一步必须是人工启动浏览,导航到具体页面,没有计划任务。

当然这不是大问题,还是利用油猴,编写一个计划任务的脚本来解决上述问题,即利用js定时器,触发指定的页面。更进一步,我们有好多爬虫脚本,这时我们就做一个任务队列,让js定时器通过导航到指定页面来启动对应的js脚本。js定时器的@match值为 http://*/* 。

具体做法是:

一、编辑js定时器(计划任务),实现定时打开指定网站;

二、让浏览器始终打开;

三、部分需要登录的网站,先行登录;并让定时器第间隔一段时间(如半小时)刷新一下网站的一个非数据页面。

四、爬虫脚本执行完后,尽量关闭页签,以节省电脑资源。

百度网盘——下载限速问题解决方案(油猴(Tampermonkey)+百度网盘直链下载助手+IDM)

一、基本概念

Tampermonkey(油猴):Tampermonkey插件是一个免费的浏览器扩展和最为流行的用户脚本管理器,拥有适用于 Chrome, Microsoft Edge, Safari, Opera Next、Firefox等多个浏览器的不同版本,能够方便管理不同的脚本。虽然有些受支持的浏览器拥有原生的用户脚本支持,但 tampermonkey脚本将在您的用户脚本管理方面提供更多的便利,它可以提供了诸如便捷脚本安装、自动更新检查、标签中的脚本运行状况速览、内置的编辑器等众多功能,同时tampermonkey还有可能正常运行原本并不兼容的脚本,是浏览器最好的辅助插件。

百度网盘直链下载助手:【百度网盘直链下载助手】是一款免客户端获取百度网盘文件真实下载地址的油猴脚本,支持Windows,Mac,Linux,Android等多平台,可使用IDM,迅雷,Aria2c协议等多线程加速工具加速下载,免登录下载告别下载限速问题。

Internet Download Manager (IDM):是一种将下载速度提高最多5倍,恢复和计划下载的工具。由于连接丢失,网络问题,计算机关闭或意外断电,全面的错误恢复和恢复功能将重新启动已下载或中断的下载。简单的图形用户界面使IDM用户友好且易于使用.Internet Download Manager具有智能下载逻辑加速器,具有智能动态文件分段和安全的多部分下载技术,可加快您的下载速度。与其他下载管理器和加速器不同,Internet Download Manager在下载过程中动态下载文件,并重用可用连接而无需额外的连接和登录阶段,以实现最佳加速性能。

Internet Download Manager支持代理服务器,ftp和http协议,防火墙,重定向,cookie,授权,音频和视频内容处理。IDM可无缝集成到Microsoft Internet Explorer,Netscape,MSN Explorer,AOL,Opera,Mozilla,Mozilla Firefox,Mozilla Firebird,Avant Browser,MyIE2以及所有其他流行的浏览器中,以自动处理您的下载。您也可以拖放文件,或从命令行使用Internet Download Manager。Internet Download Manager可以在设定的时间拨打您的调制解调器,下载您想要的文件,然后挂起甚至关闭计算机。 

其他功能包括多语言支持,zip预览,下载类别,调度专业人员,不同事件的声音,HTTPS支持,队列处理器,HTML帮助和教程,下载完成时增强的病毒防护,带配额的渐进式下载(对于使用某种类型的连接很有用)公平访问政策或FAP,如Direcway,Direct PC,Hughes等),内置下载加速器等等。

二、Tampermonkey(油猴)

下载地址:https://www.tampermonkey.net/

Chrome浏览器里,直接在应用中心搜索“Tampermonkey”安装即可。

官网下载可能需要小飞机 

脚本源 

 

OpenUserJS

OpenUserJS 继 GreasyFork 之后开始创办。它由 Sizzle McTwizzle 创建,同样地,在其储存库中也拥有大量的脚本资源。

  •  大量的脚本资源(在 2016 年 2 月份时,大约有 3700 个)
  •  拥有可以从 Github、fork scripts 中进行脚本同步的功能
  •  非常活跃的开放源代码发展模式

GreasyFork

GreasyFork 或许是最受欢迎的后起之秀了。它由 Jason Barnabe 创建,Jason Barnabe 同时也是 Stylish 网站的创办者,在其储存库中有大量的脚本资源。

  •  大量的脚本资源(在 2016 年 2 月份时,大约有 9400 个)
  •  拥有可以从 Github 中进行脚本同步的功能
  •  非常活跃的开放源代码发展模式

Userscripts.org

Userscripts.org 一直以来都是用户脚本的常用来源,但现在这个网站已经不再更新了。你可以在这个网址找到历 史资源 http://userscripts-mirror.org.

GitHub/Gist

你可以在 Github 和 Gist 中 搜索脚本资源。

 三、百度网盘直链下载助手

下载地址:

https://greasyfork.org/zh-CN/scripts/390111-%E7%99%BE%E5%BA%A6%E7%BD%91%E7%9B%98%E7%9B%B4%E9%93%BE%E4%B8%8B%E8%BD%BD%E5%8A%A9%E6%89%8B

https://github.com/syhyz1990/baiduyun

官方教程:https://www.baiduyun.wiki/zh-cn/ 

点击Tampermonkey管理 

启用

 登录百度网盘

选择文件

四、Internet Download Manager (IDM) 

下载地址:https://www.internetdownloadmanager.com/

第三方下载地址:https://www.52pojie.cn/thread-681117-1-1.html

破解工具(2019): 链接地址:https://pan.baidu.com/s/1QrKhRwfBXUD3fZodBmIFGA 提取码:hijc 

重要提示

IDM 需要6.35版本以上

安装教程 

1.离线下载好IDM插件安装包:"IDMGCExt.crx"。打开chrome://extension。如下图所示:

2.找到我们下载的"IDMGCExt.crx"文件,将其拖放到扩展程序管理页面,如下图所示:

3.同意安装后,我们载chrome扩展程序管理页面将会看到如下图示。

想要使用IDM插件,需要勾选enable和allow in incognito开发者模式。可以看出IDM插件的安装方法跟普通chrome插件离线安装方法类似。

 

开启32线程提高速度

IDM 默认为8线程,可以通过调节成32线程来提高下载速度

1. 点击选项 -- 连接

2.“连接类型/速度”的下拉选项选择最后一个“较高速率连接”

3.“最大连接数”选择32

4. 确定保存设置

 

五、使用教程

1,下载助手是支持在百度网盘的「管理页面」和「分享页面」上使用的。

2,在「分享页面」上使用时,点击“下载助手”——>“显示链接”。

3,在「管理页面」上使用时,点击“下载助手”——>“API下载”——>“显示链接”,需要在菜单右键上选择“使用IDM下载”。

常见问题

百度网盘直链下载助手

IDM——服务器响应显示您没有权限下载此文件 

参考文章

https://blog.csdn.net/gdali/article/details/90640032

https://blog.csdn.net/sinat_31428707/article/details/80949476

http://www.pc6.com/infoview/Article_64361.html

https://www.baiduyun.wiki/

http://chromecj.com/utilities/2017-12/857.html

https://blog.csdn.net/qq_37682665/article/details/88989482

以上是关于油猴爬虫方案的主要内容,如果未能解决你的问题,请参考以下文章

gh-proxy+油猴脚本 实现优雅的GitHub加速

油猴脚本:去除百度首页广告卡片推荐和二维码

百度网盘下载不限速解决方案

关于爬虫与反爬虫简略方案

Python Scrapy反爬虫常见解决方案(包含5种方法)

python爬虫使用requests请求无法获取网页元素时终极解决方案