制作浏览器javascript书签

待业在家,没什么事儿做,发现有道的页面翻译觉得挺有意思,鼠标放上去发现就是一段js代码,然后看了一下,之前做爬虫的时候有人说过js注入的爬虫,但是从来没见过,今天我就自己实现一个简单的demo

先写一段js代码:

javascript:void((function(){
	//创建一个元素
	var e=document.createElement('script');
	//给元素添加属性
	e.setAttribute('src','http://127.0.0.1:5000');
	//将元素添加到页面
	document.body.appendChild(e);
})())

然后在chrome中添加书签,添加代码时将注释全部删掉,不然并成一行后面的代码都被注释了

制作浏览器javascript书签_第1张图片

制作浏览器javascript书签_第2张图片


为了测试自己用flask写一个小服务

# -*-coding:utf-8 -*-  
__author__ = "ZJL"

from flask import Flask

app = Flask(__name__)


@app.route("/")
def index():
    of = open("test.js","r")
    jsd = of.read()
    return jsd

if __name__ == "__main__":
    app.run(debug=True)

很简单读取一个js文件将它显示到页面,同级下需要一个test.js文件,这个js文件用来写主要代码

test.js代码:

(function(){
    //  测试用
    alert("xxxx");
    //抓取博客列表的url
    var elements = document.getElementsByClassName('blog-unit');
    for (var i = 0; i < elements.length; i++) {
        alert(elements[i].getElementsByTagName('a')[0].getAttribute('href'));
    }
    //抓取自己页面的用户名
    var ee = document.getElementsByClassName("person-nick-name")[0].getElementsByTagName('span')[0].innerText;
})();

效果:

制作浏览器javascript书签_第3张图片


制作浏览器javascript书签_第4张图片


my.csdn.net应该是只能在登入状态才能进入的页面,用户登入后使用还能用js获取cookies,一下子绕开了很多反爬机制,哈哈哈,感觉自己玩玩挺有意思的


你可能感兴趣的:(javascript)