使用slenium+chromedriver实现无敌爬虫

@概述

  • 通常各大网站的后台都会有一定的反爬机制,既为了数据安全,也为了减小服务器压力
  • 通常反爬的手段的方向,都是识别非浏览器客户端,而selenium所做的事情,恰恰是驱动真正的浏览器去执行请求和操作,只不过信号不是来源于鼠标,而是来源于selenium的API(selenium本是一个自动化的测试工具)
  • 自然人用户能做的一切,selenium几乎都驱动浏览器取做,无论是否有界面,包括输入、点击、滑动,等等
  • 然而到底是鼠标操作的浏览器发起的请求还是API,对于服务端来说,是没有任何差别的
  • 所以说:做人难,做男人难,做一个后台开发的男人难上加难,让我们开始对其实施蹂躏吧

@一些掌故

  • 早些的时候流行的组合并不是selenium+chrome浏览器驱动,而是selenium+phantomjs
  • phantomjs是一款没有界面的浏览器,业界称作无头浏览器(headless),由于没有界面和渲染,其运行速度要大大优于有界面的浏览器,这恰恰是爬虫喜欢的,因此红极一时
  • 后来chrome和火狐推出了无头模式,且运行速度很流畅,phantomjs已然寿终正寝,因此我们表过不提

    @开发环境的搭建(基于ubuntu)

  • 安装selenium:sudo pip install selenium

  • 如果没有则安装chrome浏览器(尽量更新到58以上):http:
pycharm是一个集成开发环境(IDE),可以用于编写和运行Python程序。爬虫抢票是利用爬虫技术从网页上获取票务信息,并进行自动化购票的过程。在pycharm中进行爬虫抢票,通常需要使用selenium库来模拟浏览器操作,并结合其他工具和技术来实现。 以下是一个基本的步骤和示例代码,以在pycharm中使用selenium进行爬虫抢票: 1. 安装Python 3.8和pycharm专业版。 2. 安装selenium库和谷歌驱动。可以使用pip命令在终端或pycharm的内置终端中进行安装。 ``` pip install selenium ``` 3. 编写Python程序,导入selenium库和其他必要的库。 4. 配置谷歌浏览器驱动路径,并创建一个浏览器实例。 ```python from selenium import webdriver # 配置谷歌浏览器驱动路径 chrome_driver_path = "path/to/chromedriver" # 创建浏览器实例 driver = webdriver.Chrome(executable_path=chrome_driver_path) ``` 5. 使用浏览器实例打开目标网页,并进行登录或其他必要的操作。 ```python # 打开目标网页 driver.get("https://www.ticketwebsite.com") # 进行登录或其他操作 # ... ``` 6. 使用selenium提供的方法和函数来定位和操作网页元素,实现抢票逻辑。 ```python # 定位和点击购票按钮 ticket_button = driver.find_element_by_xpath("//button[@class='ticket-button']") ticket_button.click() # 填写表单信息 name_input = driver.find_element_by_xpath("//input[@id='name']") name_input.send_keys("Your Name") # 提交表单 submit_button = driver.find_element_by_xpath("//button[@class='submit-button']") submit_button.click() ``` 7. 编写循环或定时任务来重复执行抢票逻辑,直到成功购票或达到指定条件。 8. 运行Python程序,并观察程序输出和浏览器操作情况。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

搬砖的乔布梭

你好我是秦始皇转世,资助请从速

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值