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()
    
    
  • 相关阅读:
    MySQL-Front的安装简介
    【翻译】如何通过使用两台电脑变得更加有效率
    Vim学习资源汇总
    21天战拖记——Day1:不算好的开始(2014-05-04)
    课时97.背景定位上(掌握)
    课时96.背景平铺(掌握)
    课时95.背景图片(掌握)
    课时94.背景颜色(掌握)
    课时93.百度首页(理解)
    课时92.CSS元素显示模式转换(掌握)
  • 原文地址:https://www.cnblogs.com/c-x-a/p/12133393.html
Copyright © 2011-2022 走看看