开源官网:DrissionPage 官网 ,可模拟浏览器进行网页操作及信息获取。

1、脚本内容

页面元素可以使用 xpath 定位工具 (Xpath Helper) 预先获取。

#!/usr/bin/env python3
 
from DrissionPage import ChromiumPage, ChromiumOptions
import json
import time
 
# 设置 Chrome 浏览器的路径
co = ChromiumOptions().set_browser_path(r"/opt/google/chrome/google-chrome")
 
# 创建 ChromiumPage 实例
page = ChromiumPage(co)
 
# 直接设置账号和密码
username = '******'
password = '******'
 
# 打开网页
page.get('http://*****.*****.*****/login')
 
# 检查元素是否存在,并填充账号和密码
if page.ele('x://input[@id="form_item_empId"]'):
 
    # 使用设置的账号和密码填充输入框
    page.ele('x://input[@id="form_item_empId"]').input(username)
    page.ele('x://input[@id="form_item_pwd"]').input(password)
 
    # 提交表单
    page.ele('x://button[@type="submit"]').click()
 
    # 等待登录完成,可能需要一些时间或其他条件
    time.sleep(3)
 
    # 获取浏览器cookies并存至文本中
    cookies = page.cookies(as_dict=True)
    with open('cookie.txt', 'w', encoding='utf-8') as file:
        file.write(json.dumps(cookies))
 
    # 关闭浏览器
    page.quit()

从 cookie 文本中解析出 token 值

# Shell jq 解析
cat cookie.txt  | jq -r .token
 
79a19a40-02eb-4ab0-a5e0-3d771b8b6280

2、DrissionPage 安装配置(Centos7)

# 安装谷歌浏览器
yum install epel-release
yum install -y fontconfig glibc glibc-common
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
yum install -y google-chrome-stable_current_x86_64.rpm
 
# 浏览器默认位置
/opt/google/chrome/google-chrome
 
# 安装DrissionPage
pip3 install DrissionPage
 
# 配置文件位置
/usr/local/python3.8/lib/python3.8/site-packages/DrissionPage/_configs/configs.ini
 
# 浏览器配置参数
[chromium_options]
address = 127.0.0.1:9211
browser_path = chrome
# 开启无头模式、禁用沙盒模式
arguments = ['--no-default-browser-check', '--disable-suggestions-ui', '--no-first-run', '--disable-infobars', '--disable-popup-blocking', '--hide-crash-restore-bubble', '--disable-features=PrivacySandboxSettings4', '--headless=new', '--no-sandbox']
获取资源前请仔细阅读一下声明:

重要提示

如有解压密码: 看下载页、看下载页、看下载页。
源码工具资源类具有可复制性: 建议具有一定思考和动手能力的用户购买。
请谨慎考虑: 小白用户和缺乏思考动手能力者不建议赞助。
虚拟商品购买须知: 虚拟类商品,一经打赏赞助,不支持退款。请谅解,谢谢合作!
声明: 本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。