IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> pyinstaller打包selenium+企业微信群发参数调配 -> 正文阅读

[开发测试]pyinstaller打包selenium+企业微信群发参数调配

目录

1.selenium的等待与打包常见错误

2.调用print中的内容和比较数据

3.企业微信群发与webhook参数配置

4.总结

? ? ? ??


1.selenium的等待与打包常见错误

? ? ? ? 在爬一些接口加密的动态数据时,有时候的需求就是那么一两个时效性的数据,费劲心思解密整理显得有些笨拙,做无头浏览拿出数据在有些时候也是非常实用的手段,这里分享一些自己经历过的问题和大家分享。

? ? ? ? 显性等待和隐形等待是最为常见的等待手段,隐性等待页面完全加载,显性检查元素加载是否完成,个人习惯的显性的书写格式:

        wait = WebDriverWait(web, 30, 2)
        wait.until(EC.presence_of_element_located((By.XPATH, '**')))
        wait.until(EC.presence_of_element_located((By.XPATH, '**')))
        text = web.find_element_by_xpath('**').text
        time = web.find_element_by_xpath('**').text

? ? ? ? 使用xpath或者id定位都可,以每2s做一次检测,30s没到抛出异常,拿到想要的文本或者其他内容。

? ? ? ? 遇到的证书问题,监测问题,等一些稀奇古怪却又不时出现的问题,可以试一试我的参数配置。

    opt = Options()
    opt.add_argument("--headless")
    opt.add_argument("--disable-gpu")
    opt.add_argument('--ignore-certificate-errors')
    opt.add_argument('-ignore -ssl-errors')
    opt.add_experimental_option('excludeSwitches', ['enable - logging'])
    web = Chrome(options=opt, executable_path='**')  # 路径下是chrome的驱动位置
    web.get('**')

? ? ? ? 用pyinstaller打包时出现的问题大多数都是参数配置类型,还有 ? 出现C:\Program‘ 不是内部或外部命令? 的这个问题,可以写成下面这个形式(和 Program Files (x86) 挂钩的都先加个引号准没错),推荐用-D打包,很好用。(具体的参数讲解见文末)

os.system(r'C:/"Program Files (x86)"/Google/Chrome/Application/chromedriver.exe')
pyinstaller -D xxx.py

?

2.调用print中的内容和比较数据

? ? ? ? 当我们遇到循环时出来的小数据差错,有时候需要print里的内容,可以将其加入文件后再用参数调取。(也就是将print的内容保存到文件)

 print(y, end='', file=f)

? ? ? ? 而当我们遇到一些类似新闻等数据时带有时间和文本的,可以返回两个值,x = getContent() x[0]用于输出 x[1] 与上一条数据比较重复,这样在大工作量采用并发编程时,可以避免太多变量混淆。

?

?

3.企业微信群发与webhook参数配置

? ? ? ? 将新闻播报、天气预报等时效性的数据,想在手机群里就能天天实时获取,可以用企业微信自带的接口进行接入,或者用一些自动化的库实现群发,这里简单讲一下企业微信内部群webhook的实用性。

????????

? ? ? ? 添加后复制webhook参数 :

????????

?

????????配置到pycharm中


    url = '**'  # 机器人的webhook地址
    headers = {'Content-type': 'application/json'}
    data = {
        "msgtype": "text",
        "text": {
            "content": x,  # x为要发送的文字
            "mentioned_list": ["@all"]  # 可指定人
        }  # 更多用途可查询企业微信官方

    }
    resp = requests.post(url, headers=headers, json=data) 
    print(datetime.now().strftime("%Y-%m-%d %H:%M:%S"),resp.text)
    resp.close()

? ? ? ? 可以群发的不止文本,还有图片、图文、指定任务,发送时间、频率等都可以通过post请求将data数据传入实现。

? ? ? ? 针对外部群没有接口的情况,可以使用其他库利用算法运算(感兴趣可以私信我一起交流 )

4.总结

? ? ? ? 在途中的自己真正碰到了一些问题,想到了一些小技巧,也许无意中的小错误就会让我苦想好几天,希望自己可以在你们的编程路上发挥锦薄之力。

????????欢迎看到这篇的大家提出宝贵意见,一起交流学习。

Python(七)并发编程-实践1 (进程,线程,协程)

?企业微信机器人—入手
pyinstaller参数介绍以及总结

? ? ? ? ?

?

?

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章           查看所有文章
加:2021-10-09 16:34:29  更:2021-10-09 16:36:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 2:44:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码