首页 > Web开发 > 详细

selenium运行js代码笔记

时间:2020-01-02 16:29:10      阅读:73      评论:0      收藏:0      [点我收藏+]
# -*- 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()

selenium运行js代码笔记

原文:https://www.cnblogs.com/c-x-a/p/12133393.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!