python3 chromedrivers签到的简单实现

 更新时间:2023年03月21日 10:55:45   作者:时光凉春衫薄  
本文主要介绍了python3 chromedrivers签到的简单实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

爬虫一般是useragent,或者js脚本交互验算的方式来反机器人爬虫,只是很多反爬虫容易被侦测出来容易被拦截,这里有个思路可以用webdrivers来驱动浏览器去爬虫,这样就可以绕过大多数的防爬机制(有些高级的防反爬虫也不行,比如验证码,鼠标轨迹验证等技术这样chromedriver就不管用了)

用chrome浏览器举例

第一下载安装chrome浏览器并查明版本号。

┌──(kali㉿kali)-[~]
└─$ apt-get install google-chrome-stable

然后照着浏览器去下载相应的chromedriver

下载地址:CNPM Binaries Mirror

下载后解压,将里面的chromedriver 复制到/usr/bin/ 目录下面(pach环境变量里面)即可

下面开始写脚本

from time import sleep
import os
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys
 
option = webdriver.ChromeOptions() 
#设置chrome的浏览器选项
 
option.add_argument('--headless') 
#设施chrome选项为无窗口运行
 
driver = webdriver.Chrome(chrome_options=option) 
# 创建一个chrome浏览器,应用无窗口的配置。
 
driver.get("http://www.jsons.cn/ping/") 
#用chrome去访问网页
 
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, 'txt_url')))
#让chrome显式等待driver这个对象,并最多等待10秒,当界面出现'txt_url'这个元素后在继续往下
 
driver.find_element(By.XPATH, '//*[@id="txt_url"]').send_keys('ss111d.yqw5ey.dnslog.cn')
#再出现//*[@id="txt_url"]这个元素后往这个元素里面填入ss111d.yqw5ey.dnslog.cn这个数值
 
driver.find_element(By.XPATH, '//*[@id="startbtn"]').click()
#然后找到//*[@id="startbtn"] 这个按钮模拟点击它
 
sleep(1)
#等待一秒后退出

 find_element(By.XPATH, '//*[@id="txt_url"]')  这个元素怎么来的?如下:

总的来说这个脚本就是用chrome 打开这个网站,然后输入这个dnslog的网址去ping一下。模仿人点击去测试网页

 结果

其他:

下拉菜单如何选择?

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
 
# 创建一个 WebDriver 实例
driver = webdriver.Chrome()
 
# 访问网页
driver.get("https://example.com")
 
# 选择下拉框元素
select_box = driver.find_element(By.ID, "my_select_box")
 
# 初始化 Select 类
select = Select(select_box)
 
# 选择一个选项
select.select_by_value("option_value")
 
# 关闭 WebDriver 实例
driver.quit()

在最新版本的 Selenium Python 包中,推荐使用 find_element 方法的新形式,即指定查找方式的参数 By,以及对应的选择器表达式,具体有以下几种用法:

  • 通过元素 ID 查找元素:find_element(By.ID, id_)
  • 通过元素 name 查找元素:find_element(By.NAME, name)
  • 通过元素 class name 查找元素:find_element(By.CLASS_NAME, name)
  • 通过元素标签名查找元素:find_element(By.TAG_NAME, name)
  • 通过元素链接文本查找元素:find_element(By.LINK_TEXT, text)
  • 通过元素部分链接文本查找元素:find_element(By.PARTIAL_LINK_TEXT, text)
  • 通过元素 CSS 选择器查找元素:find_element(By.CSS_SELECTOR, css_selector)
  • 通过元素 XPath 查找元素:find_element(By.XPATH, xpath)

到此这篇关于python3 chromedrivers签到的简单实现的文章就介绍到这了,更多相关python3 chromedrivers签到内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用Python开发Telegram Bot的流程步骤

    使用Python开发Telegram Bot的流程步骤

    Telegram Bot 是一种可以与用户交互的机器人应用程序,通过 Telegram 的 Bot API 与服务器通信,它可以用来处理消息、执行命令、提供服务,如通知提醒、数据查询和自动化任务等,本文给大家介绍了如何用 Python 开发一个 Telegram Bot,需要的朋友可以参考下
    2025-01-01
  • python 除法保留两位小数点的方法

    python 除法保留两位小数点的方法

    今天小编就为大家分享一篇python 除法保留两位小数点的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • Python数据类型最全知识总结

    Python数据类型最全知识总结

    学习一门语言,往往都是从Hello World开始. 但是笔者认为,在一个黑框框中输出一个“你好,世界”并没有什么了不起,要看透事物的本质,熟悉一门语言,就要了解其底层,就是我们常常说的基础,本篇从python中的数据类型开始,需要的朋友可以参考下
    2021-05-05
  • Visual Studio code 配置Python开发环境

    Visual Studio code 配置Python开发环境

    这篇文章主要介绍了Visual Studio code 配置Python开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • 使用Python实现生成对角矩阵和对角块矩阵

    使用Python实现生成对角矩阵和对角块矩阵

    这篇文章主要为大家详细介绍了如何使用Python实现生成对角矩阵和对角块矩阵,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-01-01
  • Python实例一个类背后发生了什么

    Python实例一个类背后发生了什么

    Python实例一个类背后发生了什么,本文为大家一一列出,感兴趣的朋友可以参考一下
    2016-02-02
  • python通过函数属性实现全局变量的方法

    python通过函数属性实现全局变量的方法

    这篇文章主要介绍了python通过函数属性实现全局变量的方法,实例分析了Python中函数属性的相关使用技巧,需要的朋友可以参考下
    2015-05-05
  • 利用python和百度地图API实现数据地图标注的方法

    利用python和百度地图API实现数据地图标注的方法

    这篇文章主要介绍了利用python和百度地图API实现数据地图标注的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • python写入中英文字符串到文件的方法

    python写入中英文字符串到文件的方法

    这篇文章主要介绍了python写入中英文字符串到文件的方法,实例分析了Python操作中英文字符串的技巧,非常简单实用,需要的朋友可以参考下
    2015-05-05
  • Python 时间操作datetime详情

    Python 时间操作datetime详情

    这篇文章主要介绍了 Python 时间操作datetime,datetime 模块提供处理时间和日期的多种类,简单方便,下面文章将详细介绍其内容,需要的朋友可以参考一下
    2021-11-11

最新评论