bxfqing 发表于 2014-09-09 00:52

[Done]python怎么塞javascript进去执行

本帖最后由 bxfqing 于 2014-09-10 00:58 编辑

分析我需要的网页后,发现页面会执行js,然后强行插入cookies
网页源代码:

function checkLogin(){
ds.setCookie('username', username, 30);
}
然后又找到了这个,common.js
      setCookie: function(name, value, expir){
                var cookie = name + '=' + encodeURIComponent(value);
                if(expir !== void 0){
                        var now = new Date();
                        now.setDate(now.getDate() + ~~expir);
                        cookie += '; expires=' + now.toGMTString();
                }
                document.cookie = cookie;
如何在python,把这个塞到python模拟流程

找了一些参考网页,没有成功啊
python中打开网页后执行javascript???
http://www.oschina.net/question/561879_56640

sxcong 发表于 2014-09-11 16:47

打开网页后执行javascript,那是浏览器帮你做的。浏览器内置js内核,而且不同浏览器还不大一样。
python可以解析,但运行的话,比如js显示一张图,播放一个动画,还需要其他方面的支持。
解析js的开源项目,google的V8做的非常好。

赵大班长 发表于 2014-09-16 16:51

python 可以使用pyv8来执行js代码import PyV8
def executeJavaScript(txt):
    """
                执行javascript中的编码方法,获得js的编码转货结果
                            传入参数: txt 需要处理字符串
                   返回值:result_txt 吃力完成后的
    """
    info_lt = ['encodeURIComponent','encodeURI','escape','unescape','decodeURI','decodeURIComponent']
    ctxt = PyV8.JSContext()
    ctxt.enter()
    func = ctxt.eval(''' (function(a){return encodeURIComponent(encodeURI(a))})''')
    result_txt = func(txt)
    return result_txt

bxfqing 发表于 2014-10-09 13:54

放弃这种整法了,重新分析网站实现,不需要插入JS执行也能达到目标。
页: [1]
查看完整版本: [Done]python怎么塞javascript进去执行