记录一个Python鼠标自动模块用法和selenium加载网页插件的设置

写爬虫,或者网页自动化,让程序自动完成一些重复性的枯燥的网页操作,是最常见的需求。能够解放双手,空出时间看看手机,或者学习别的东西,甚至还能帮朋友亲戚减轻工作量。

然而,网页自动化代码编写过程中,有些网页元素是很难识别,或者因为反爬的机制,元素被隐藏或者加密,常规的办法无法实现自动点击,或者自动提交等操作,于是偶尔配合鼠标自动化的点击,或者网页插件配合,也可以紧急救场,毕竟及时解决问题才是关键,先让网页自动运行着,腾出时间,一边完成自动化工作,一边再查资料,想办法解决这些问题,优化代码。

下面是鼠标键盘的自动模块,简单容易上手。

pymouse 鼠标自动模块

pykeyboard 键盘自动模块

安装使用参考网页 https://blog.csdn.net/qq_16555103/article/details/108427438

python 复制代码
'示例代码,在特定位置,重复点击鼠标:'

import requests
from selenium import webdriver
import re
import pymouse,pykeyboard,os,sys
import random
from pymouse import *
from pykeyboard import PyKeyboard
from pynput.mouse import Button, Controller

import time

import os

import threading





def automouse(): #鼠标自动点击
    mouse = Controller()
    

    #读取鼠标指针在屏幕上的位置

    print(f'当前鼠标指针的位置是:{mouse.position}')

    # 设置鼠标指针的位置

    mouse.position = (1104, 620)

    print(f'现在我们将鼠标指针移动到了 {mouse.position}')

    # 相对于当前位置移动指针

    mouse.press(Button.left)#左键按下
    time.sleep(0.05)
    #mouse.move(370, 0)

    mouse.release(Button.left)#抬起左键



while True:
    time.sleep(8)
    automouse()
python 复制代码
'Google浏览器加载油猴等插件,selenium如何配置:'
import requests
from selenium import webdriver
import re
import pymouse,pykeyboard,os,sys
import random
from pymouse import *
from pykeyboard import PyKeyboard
from pynput.mouse import Button, Controller
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.chrome.service import Service
import os
from multiprocessing import Process
import threading

from bs4 import BeautifulSoup

 # 启用带插件的浏览器
    option = webdriver.ChromeOptions()
    #用Chrome地址栏输入chrome://version/,查看自己的"个人资料路径",然后在浏览器启动时,调用这个配置文件  
   
    
    option.add_argument('--user-data-dir='+r'C:/Users/mayn/AppData/Local/Google/Chrome/User Data/')  
    #注意设置成用户自己的数据,在谷歌浏览器地址栏,输入chrome://version/,回车,你会看到很多版本信息,找到个人资料路径,复制到这里面。
    
    driver = webdriver.Chrome(options=option)
    
    time.sleep(3)
    driver.get("http://www.baidu.com")
    #driver.maximize_window()

    # 设置浏览器窗口的位置和大小
    driver.set_window_position(20,40)
    driver.set_window_size(1500,800)
    driver.maximize_window()
    driver.implicitly_wait(10)
   
相关推荐
长沙三为智能科技2 分钟前
多平台内容矩阵怎么配合GEO:4层分工与3条去重规则
python·aigc·geo优化
ycydynq3 分钟前
django 添加信息时,对外键设置条件
数据库·python·django
清水白石0089 分钟前
Python 安装与环境配置:Windows、macOS、Linux 完整指南(第2集)
windows·python·macos
一只QAQ11 分钟前
python语法学习
linux·python·学习
全栈陈序员21 分钟前
【Python】基础语法入门(二十八)—— 数据库操作入门:用 SQLite 持久化数据
数据库·人工智能·python
晚风叙码1 小时前
Linux 进程概念(上):从冯诺依曼到进程调度
linux·运维·计算机外设
weixin_440401691 小时前
大数据技术-数据分析(EXcel+Python数据处理+SQL)
大数据·python·数据分析·excel
甜到心里的蛋糕1 小时前
AI 生成 MV 音频异响排查:频谱定位、片段替换与 Nginx 缓存
人工智能·python·nginx·ffmpeg·音视频·音频处理
2601_967980111 小时前
python中的静态方法和类方法
python·静态方法·类方法·实例化·方法调用
智购科技无人售货机厂家1 小时前
自动售货机物联网平台为什么会出现在线状态不一致?~YH
python·单片机·嵌入式硬件·django·pygame