通过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) 收藏 举报 可以实现 ...
随机推荐
- SVM2---核函数的引入
前边总结了线性SVM,最终转化为一个QP问题来求解.后来又考虑到非线性SVM,如果特征特别特别多的话,直接使用QP的话求解不了,我们经过一系列的转化,把这一问题转化为训练集大小n量级的QP问题. ht ...
- /etc/hosts文件设置不对导致Jboss启动失败
Caused by: javax.management.MBeanRegistrationException: preRegister() failed: [ObjectName='jboss.rem ...
- 《机器学习实战》学习笔记——第14章 利用SVD简化数据
一. SVD 1. 基本概念: (1)定义:提取信息的方法:奇异值分解Singular Value Decomposition(SVD) (2)优点:简化数据, 去除噪声,提高算法的结果 (3)缺点: ...
- wpf:小问题总结
1.我们经常在新添加的一个dll的时候,启动程序,会报出找不到对应的dll. 我们需要做如下操作: 1)右击dll,选择属性,改成始终复制
- 对于for循环构成的九宫格里的button,如何满足“有默认选中的一个,并且只能选中一个”?
需要构造一个全局变量self.priceBtn 在九宫格写法中 ) { self.priceBtn = btn; self.priceBtn.selected = YES; } 在button的点击方 ...
- 在spark中操作mysql数据 ---- spark学习之七
使用spark的 DataFrame 来操作mysql数据. DataFrame是比RDD更高一个级别的抽象,可以应用SQL语句进行操作,详细参考: https://spark.apache.org/ ...
- [python] 线程锁
参考:http://blog.csdn.net/kobeyan/article/details/44039831 1. 锁的概念 在python中,存在GIL,也就是全局解释器锁,能够保证同一时刻只有 ...
- centos上手动编译安装tmux的问题
https://blog.linuxeye.com/323.html 装个tmux也是不容易.. 关键词:libevent要自己下载2.0版,然后编译.安装时还要各种参数指定目录.
- aix DNS 配置以及网络命令traceroute和nslookup 和 dig 命令
DNS 域名系统 (DNS) 服务器将 IP 地址解释为其他计算机或网站的域名和地址.如果没有 DNS,您需要在 Web 浏览器中输入 IP 地址.例如,如果您未访问 DNS 并希望查看 IBM 的网 ...
- Java基础语法总结
1.关键字:每门编程语言都有一些保留的单词,用于定义该门语言,这些单词对编译器有特殊含义,并且不能作为标识符,这就是编程语言的关键字. abstract.boolean.break.byte.case ...