当前位置: 首页 > news >正文

温州 网站建设网站开发范围

温州 网站建设,网站开发范围,设置网站域名解析和网站主机绑定,万能素材库文章目录 前言一、什么时候需要用Python控制浏览器?二、下载Chrome浏览器驱动文件1. 安装Chrome浏览器并查看版本2. 下载浏览器驱动文件3. 解压到python编译器目录(python.exe所在目录) 三、Python控制Chrome浏览器(附源代码&…

文章目录

  • 前言
  • 一、什么时候需要用Python控制浏览器?
  • 二、下载Chrome浏览器驱动文件
    • 1. 安装Chrome浏览器并查看版本
    • 2. 下载浏览器驱动文件
    • 3. 解压到python编译器目录(python.exe所在目录)
  • 三、Python控制Chrome浏览器(附源代码)
    • 1. 操作分两步
    • 2. Python控制Chrome浏览器完整源代码
  • 四、Chrome浏览器Cookie在哪里?(避坑指南)
  • 总结


前言

本文将为您展示如何通过Python控制浏览器实现网页的打开、页面的切换和关闭的基本操作,另外对于高阶用户,知道Chrome浏览器Cookie在哪里?可以方便方位Cookie从而实现带登录的更多操作。当然,利用本文方法,你也可以提前登录好,这样就可以直接操作,而免去繁琐的登录环节。按步骤操作,小白也可以实现功能哦!

一、什么时候需要用Python控制浏览器?

有些时候,我们需要操作浏览器完成访问,比如通过网页操作同花顺模拟炒股,又比如做一些网页端的测试等。总之,每次都要点击很多次鼠标,太麻烦了。那么有没有一种可以方法可以通过程序控制操作呢。当然,有些人已经想到了模拟键盘鼠标的键盘精灵类软件。这些当然可以。但我们今天要讲一种更为直接的办法。

二、下载Chrome浏览器驱动文件

1. 安装Chrome浏览器并查看版本

检查自己的Chrome浏览器版本,后面下载驱动要看这个,否则不匹配也用不了。
在这里插入图片描述

2. 下载浏览器驱动文件

然后到下面的网页里去找对应的版本(主要的版本号对应上即可)
https://registry.npmmirror.com/binary.html?path=chromedriver/
在这里插入图片描述
根据操作系统选择需要下载的文件,Windows系统下载这个文件即可。
在这里插入图片描述

3. 解压到python编译器目录(python.exe所在目录)

将解压出来的chromedriver.exe放到python编译器目录。如果使用Python虚拟环境,一样放到虚拟环境目录下。

三、Python控制Chrome浏览器(附源代码)

1. 操作分两步

(1)在CMD命令提示符中输入(具体路径看你的浏览器安装位置):

cd C:\Program Files\Google\Chrome\Application\
chrome.exe --remote-debugging-port=9200 --user-data-dir="D:\tempfiles"

(2)在python中输入,后面的端口号和前面的要保持一致,多个浏览器,就自己匹配好就行:

option.add_experimental_option("debuggerAddress", "127.0.0.1:9200")

通过以上2个步骤的配合,即可实现使用selenium对当前打开的chrome界面进行接管。

2. Python控制Chrome浏览器完整源代码

这里使用selenium 来控制浏览器,为方便操作,将其打包成类。并且使用模糊搜索,可通过窗口titile操作页面。个人独创,这里加鸡腿啊!

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
import time,os
import datetimedef fuzzy_find(x,_dict):# 对x通过键名模糊查找后返回键名,键值for key,value in _dict.items(): if x in key:return key,valuereturn x,None# 定义一个字典,设置网页标题和url,后面操作会使用到    
url_dict = {'通达信问小达':'https://wenda.tdx.com.cn/site/wenda/index.html','雪球':'https://xueqiu.com/','百度':'http://www.baidu.com',}class Chrome_browser():def __init__(self):print('start Chrome_browser')options = Options()options.add_experimental_option("debuggerAddress", "127.0.0.1:9200")self.browser = webdriver.Chrome(options=options)self.browser.implicitly_wait(8)  # 设置隐式时间等待self._max()def _max(self):self.browser.maximize_window()  # 最大化浏览器def _get_tab_dict(self):tab_dict = {}handles = self.browser.window_handlesfor handle in handles:  # 切换窗口# print ('switch to second window', handle)# self.browser.close() # 关闭第一个窗口self.browser.switch_to.window(handle)  # 切换到第二个窗口# print(self.browser.title)title = self.browser.title.replace(u'\xa0', '').split('-')[0] # 剔除标题中的'-'字符tab_dict[title] = handlereturn tab_dictdef open_tab(self,url_dict=url_dict):for k,v in url_dict.items():print('进入'+k,datetime.datetime.now())self.browser.switch_to.new_window('tab')self.browser.get(v)self.browser.refresh()time.sleep(2)def _switch(self, name='', act=''):# 包含同时关闭的功能tab_dict = self._get_tab_dict()print('tab_dict',tab_dict)if name != '':key,value = fuzzy_find(name,tab_dict)# print('key,value',key,value)if value != None:self.browser.switch_to.window(value)if act == 'close':self.browser.close()return Falsereturn Trueelse:return Falsedef _close(self):# 关闭所有窗口,关闭单个由switch完成。tab_dict = self._get_tab_dict()for k,v in tab_dict.items():  # 切换窗口self.browser.switch_to.window(v)self.browser.close()if __name__=='__main__':cb = Chrome_browser()cb.open_tab()cb._switch(name='通达信',act='') # 切换到title为name的窗口,act='close'则切换完同时关闭。cb._close() # 关闭所有窗口,关闭单个由switch完成。

四、Chrome浏览器Cookie在哪里?(避坑指南)

以上操作,可以提前登录好,并保存密码,即可实现自动登录。

但如果需要读取Cookie完成更多高级操作,请注意以下路径。网上之前的文章很多,但好些拿来不能用,关键是Cookie文件路径变了:
96版本以前:./AppData\Local\Google\Chrome\User Data\default\Cookies
96版本之后:./AppData/Local/Google/Chrome/User Data/Default/Network/Cookies

完整路径如(Administrator替换为自己的用户名):
C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default\Network\Cookies


总结

关于Python控制浏览器完成各种操作的教程,网上可以说很多,笔者也是各种学习,但经过测试使用还是对小白不友好。各种填坑在所难免。为了方便操作,避免踩坑,著此文以方便各位。

各种测试,一个周末又报废了,写作不易,有帮助的话,留个言,也提高以下活跃度。

http://www.yayakq.cn/news/37370/

相关文章:

  • 阳江专业手机网站制作公司做自媒体网站
  • 重庆官方推广网站济南做网站优化价格
  • 无锡建设网站公司校园网络及网站建设
  • 未来做那些网站致富wordpress换头像不显示不出来
  • nas有域名了怎么做网站一线城市网站建设费用高
  • 国外vps做网站测速有什么做兼职的医疗网站
  • 嘉兴高端网站外贸网站空间选择
  • 青岛外贸网站建设费用专业网站设计
  • 网站系统 外贸网站建设宣传语
  • 哪里有门户网站开发公司蚌埠网站制作公司哪家好
  • 网站服务器是什么企业培训课程分类
  • 西安网站建设公司西安网络公司卖源码的网站
  • 自己怎么注册一个网站wordpress调用post的发布时间
  • 微山本地有做网站的么做外贸阿里巴巴有哪些网站
  • 网站建设捌金手指花总四ssh小型购物网站开发
  • 音乐网站还可以做唐山建设集团下岗职工网站
  • 怎么做网站商城wordpress修改链接出现404
  • 网站域名批量查询注册洛阳瀍河建设局网站
  • 重庆做网站哪个好些嘛海口装饰设计网站建设
  • 小白建站软件山西省住房和城乡建设厅网站
  • 福州市交通建设集团有限公司网站什么是优化产业结构
  • 网站建设 验收商业网站建设者
  • 深圳网站建设认准乐云践新搜索引擎优化有哪些
  • 浦口区网站建设质量推荐有哪些做的比较精美的网站
  • 一分钟建站wordpress 用的什么框架
  • 电子商务网站建设与管理实训心得设计兼职网站有哪些
  • 辽宁天一建设有限责任公司网站百度链接收录
  • 做购物网站小图标河北石家庄
  • php网站忘记后台密码六安网站制作多少钱
  • 怎么在360网站做词条湿地公园网站开发招标