写爬虫,或者网页自动化,让程序自动完成一些重复性的枯燥的网页操作,是最常见的需求。能够解放双手,空出时间看看手机,或者学习别的东西,甚至还能帮朋友亲戚减轻工作量。
然而,网页自动化代码编写过程中,有些网页元素是很难识别,或者因为反爬的机制,元素被隐藏或者加密,常规的办法无法实现自动点击,或者自动提交等操作,于是偶尔配合鼠标自动化的点击,或者网页插件配合,也可以紧急救场,毕竟及时解决问题才是关键,先让网页自动运行着,腾出时间,一边完成自动化工作,一边再查资料,想办法解决这些问题,优化代码。
下面是鼠标键盘的自动模块,简单容易上手。
pymouse 鼠标自动模块
pykeyboard 键盘自动模块
安装使用参考网页 https://blog.csdn.net/qq_16555103/article/details/108427438
'示例代码,在特定位置,重复点击鼠标:'
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()
'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)