通过Greasemonkey实现网页图片自动点击
昨天受一个朋友所托,实现了一个在特定网页自动点击某超链接图片实现网页跳转功能的JavaScript脚本。
工具就是Firefox的Greasemonkey扩展插件。代码如下:
// ==UserScript==
// @name 脚本名字
// @namespace http://weibo.com/p/1005052581834920
// @version 20150303
// @description 自动点击特定超链接实现网页跳转
// @include http://shop.snh48.com/flow.php?step=cart
// @require http://shop.snh48.com/js/common.js
// @run-at document-end
// ==/UserScript==
var imgArray = document.getElementsByTagName('img');
for (var i = 0; i < imgArray.length; i++) {
if (imgArray[i].src == 'http://shop.snh48.com/themes/snh48/images/checkout.gif') {
imgArray[i].click();
}
}
其中1~9行用来向Greasemonkey描述这个脚本自身的信息:
- @name是用户脚本的名字,它将会在安装脚本时显示在安装对话框,之后会显示在“管理用户脚本”对话框中,尽量用好识别的名字。
- @namespace是一个URL,Greasemonkey用它来区分名称相同但是作者不同的脚本。建议用个人网页地址,比如微博主页。
- @version记录脚本的版本号,可以用1.0、1.1、2.0这种常用版本号或脚本编写日期等。
- @description是脚本功能的描述,它将会在安装脚本时显示在安装对话框之后会显示在“管理用户脚本”对话框中。尽量言简意赅。
- @include是一个URL,Greasemonkey通过它知道要在哪些网站上执行该脚本。可以用多行指定多个网址,也可以用通配符*来代替域名或路径中的部分字符,这样可以将子网页都包括进来。
- @exclude也是一个URL,Greasemonkey通过它知道要在哪些网站上必不执行该脚本,它的权限比@include高。
- @require是其他脚本名字,它告诉Greasemonkey该脚本要想工作还需依赖哪些js脚本,可以用多行指定多个脚本。
下面代码主体部分了,在上面这个例子中,首先通过document.getElementsByTagName函数获得该网页的所有img,然后用for循环扫描一遍,找到目标图片后用click函数跳转就行了。
还有两点需要一提的:
- 判断图片的src值时需要在网页源代码中的src值前加上父目录,在上面这个例子中,themes/snh48/images/checkout.gif是目标图片在网页中的src值,但做判断时还需在前面加上父目录http://shop.snh48.com/。
- 如果本身网页中有给目标图片加上ID标签,那么直接用document.getElementById函数就可以定位到目标图片,不需用for循环逐个判断了,这也告诉我们编写前端网页时多用ID标签,毕竟方便。
通过Greasemonkey实现网页图片自动点击的更多相关文章
- Mac 下安装python3.7 + pip 利用 chrome + chromedriver + selenium 自动打开网页并自动点击访问指定页面
1.安装python3.7https://www.python.org/downloads/release/python-370/选择了这个版本,直接默认下一步 2.安装pipcurl https:/ ...
- js中网页图片自动更换的效果
<script> var arr=new Array(); arr[]="url(images/city.jpg)"; arr[]="url(images/d ...
- 【图文详解】python爬虫实战——5分钟做个图片自动下载器
python爬虫实战——图片自动下载器 之前介绍了那么多基本知识[Python爬虫]入门知识,(没看的先去看!!)大家也估计手痒了.想要实际做个小东西来看看,毕竟: talk is cheap sho ...
- 本元鼠标自动点击器 v1.31 官方绿色版
软件名称: 本元鼠标自动点击器软件语言: 简体中文授权方式: 免费软件运行环境: Win 32位/64位软件大小: 516KB图片预览: 软件简介:本元鼠标自动点击器是一款免费绿色版的鼠标自动点击器, ...
- python爬虫实战——5分钟做个图片自动下载器
python爬虫实战——图片自动下载器 制作爬虫的基本步骤 顺便通过这个小例子,可以掌握一些有关制作爬虫的基本的步骤. 一般来说,制作一个爬虫需要分以下几个步骤: 分析需求(对,需求分析非常重要, ...
- 【转】Android循环滚动广告条的完美实现,封装方便,平滑过渡,从网络加载图片,点击广告进入对应网址
Android循环滚动广告条的完美实现,封装方便,平滑过渡,从网络加载图片,点击广告进入对应网址 关注finddreams,一起分享,一起进步: http://blog.csdn.net/finddr ...
- 【Python开发】【神经网络与深度学习】网络爬虫之图片自动下载器
python爬虫实战--图片自动下载器 之前介绍了那么多基本知识[Python爬虫]入门知识(没看的赶紧去看)大家也估计手痒了.想要实际做个小东西来看看,毕竟: talk is cheap show ...
- JS图片自动和可控的轮播切换特效
点击这里查看效果:http://hovertree.com/texiao/js/1.htm HTML文件代码如下: <!DOCTYPE html> <html xmlns=" ...
- c#控制IE浏览器自动点击等事件WebBrowser,mshtml.IHTMLDocument2 .
// c#控制IE浏览器自动点击等事件WebBrowser,mshtml.IHTMLDocument2 分类: c# 2013-02-06 15:18 3008人阅读 评论(0) 收藏 举报 可以实现 ...
随机推荐
- debian vi
这次用DigitalOcean VPS发现vi的方向键变成字母,没办法正常使用,搜索了下找到了解决办法. 1 vi /etc/vim/vimrc.tiny 找到set compatible改为set ...
- storyboard xib下label怎么自适应宽度高度
先看需求:两个Label,要求蓝色的label紧跟在红色的label文字后面 ok首选正常添加约束 红色的Label添加宽度,高度,左边,上边约束 蓝色的Label添加宽度,高度,左边,和红色的水平 ...
- 关于Android的布局
Android中五大布局是直接继承ViewGroup的布局:RelativeLayout.GridLayout.FrameLayout.AbsoluteLayout.LinnerLayout(Tabl ...
- Train Problem I hdu 1022(栈)
http://acm.split.hdu.edu.cn/showproblem.php?pid=1022 题意:给出火车的进站与出站顺序,判断是否可以按照给出的出站顺序出站. #include < ...
- 02-JAVA中的基本语法
第一个动手动脑: 首先用枚举类型定义两个变量,然后判断两个变量是否引用同一对象,在判断枚举类型是否是原始数据类型,再从字符串中转换,最后列出所有的对象. 很明显,这两个变量都是枚举类型,但是这两个变量 ...
- mysql术语解释
数据库(database): 数据表的集合: 数据表 (table):数据的矩阵: 列(column): 相同属性的数据的集合: 行(row): 一个对象的各种属性数据的集合: 冗余():一个字段在多 ...
- $watch监听数据变化和run方法
angular中$watch方法可以监听数据的变化. $scope.$watch('phone',function(){ $scope.phone.fre = $scope.phone.num> ...
- TNetHTTPClient演示
TNetHTTPClient演示 TNetHTTPClient是DELPHI新增加的异步HTTP通信控件(区别于INDY的阻塞控件). unit Unit1; interface uses Winap ...
- sqlserver,mysql,oracle通用的模拟和改进的全文搜索算法
问:数据库效率最低的地方是什么? 答:表扫描 问:表扫描常见的情况是 答:like '%a%' 这类查询 如果使用全文检索引擎,又无法满足我们的需求的时候怎么办,比如要从 一个商品名称 "农 ...
- HTML5的touch事件
HTML5中新添加了很多事件,但是由于他们的兼容问题不是很理想,应用实战性不是太强,所以在这里基本省略,咱们只分享应用广泛兼容不错的事件,日后随着兼容情况提升以后再陆续添加分享.今天为大家介绍的事件主 ...