zoukankan      html  css  js  c++  java
  • selenium运行js代码笔记

    # -*- coding: utf-8 -*-
    # @Time : 2019-10-27 20:56
    # @Author : cxa
    # @File : demo.py
    # @Software: PyCharm
    from selenium import webdriver
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.common.action_chains import ActionChains
    from selenium.webdriver.common.keys import Keys
    from selenium.webdriver.chrome.options import Options
    import time
    
    
    def get_text(id,attr,supporter):
        # script=("let id="+f'"{id}"'+
        #     ";let attr="+f'"{attr}"'+
        #     ";let supporter ="+f'"{supporter}"'
        #     +
        #     """
        #     const run=function(){
        #     let all_str = $(id).getAttribute(attr)
        #     let end_index=supporter.length+58
        #     Base64._keyStr = all_str.substring(0, end_index)
        #     let charset = all_str.substring(64, all_str.length)
        #     let encoded = Base64.decode(charset,supporter);
        #     return encoded
        # }
        # return run()
        # """)
        ###  拼接字符串注意{}要写出{{}},如果需要获取结果最后需要加上return
        script=("""
           let id='{id}'
           let attr='{attr}'
           let supporter ='{supporter}'
        const run=function(){{
        let all_str = $(id).getAttribute(attr)
        let end_index=supporter.length+58
        Base64._keyStr = all_str.substring(0, end_index)
        let charset = all_str.substring(64, all_str.length)
        let encoded = Base64.decode(charset,supporter);
        return encoded
    }}
        return run()
        """).format(id=id,attr=attr,supporter=supporter)
        return script
    
    
    
    chrome_option = Options()
    chrome_option.add_argument("--headless")
    chrome_option.add_argument("--disable-gpu")
    chrome_option.add_argument('--ignore-certificate-errors')  # SSL保存
    browser = webdriver.Chrome(options=chrome_option)
    wait = WebDriverWait(browser, 10)
    # 启动浏览器,获取网页源代码
    mainUrl = "http://127.0.0.1:5002/"
    browser.get(mainUrl)
    result=browser.execute_script(get_text("base64","data","chrome"))
    print(result)
    time.sleep(10)
    browser.quit()
    
    
  • 相关阅读:
    当我说要做大数据工程师时他们都笑我,直到三个月后……转
    体系化认识RPC--转
    jsoup HTML parser hello world examples--转
    数组指针和指针数组的区别
    什么是计算机科学
    HTML图片热区map area的用法
    九宫八卦--易学基础
    初探Net框架下的XML编程技术
    百度网盘学习资料
    遍历json 对象的属性并且动态添加属性
  • 原文地址:https://www.cnblogs.com/c-x-a/p/12133393.html
Copyright © 2011-2022 走看看