python+selenium实现自动化百度搜索关键词


Posted in Python onJune 03, 2019

通过python配合爬虫接口利用selenium实现自动化打开chrome浏览器,进行百度关键词搜索。

1、安装python3,访问官网选择对应的版本安装即可,最新版为3.7。

python+selenium实现自动化百度搜索关键词

2、安装selenium库。

使用 pip install selenium 安装即可。

同时需要安装chromedriver,并放在python安装文件夹下,如下图所示。

python+selenium实现自动化百度搜索关键词

3、获取爬虫接口链接。

注册账号,点击爬虫代理,领取每日试用。

python+selenium实现自动化百度搜索关键词

from selenium import webdriver 

import requests,time 

 #自建IP池 

def get_proxy():

  r = requests.get('http://127.0.0.1:5555/random')

  return r.text 

import random 

FILE = './tuziip.txt' 

# 读取的txt文件路径 

# 获取代理IP 

def proxy_ip():

  ip_list = []

  with open(FILE, 'r') as f:

    while True:

      line = f.readline()

      if not line:

        break

      ip_list.append(line.strip())

  ip_port = random.choice(ip_list)

  return ip_port 

def bd():

  chromeOptions = webdriver.ChromeOptions()

  # 设置代理  

chromeOptions.add_argument("--proxy-server=http://"+proxy_ip())  

# 一定要注意,=两边不能有空格,不能是这样--proxy-server = http://202.20.16.82:10152

  browser = webdriver.Chrome(chrome_options = chromeOptions)  

# 查看本机ip,查看代理是否起作用  

  browser.get("https://www.baidu.com/")  

  browser.find_element_by_id("kw").send_keys("ip")

  browser.find_element_by_id("su").click()

  time.sleep(2)

  browser.find_element_by_id("kw").clear()

  time.sleep(1)

  browser.find_element_by_id("kw").send_keys("百度")

  browser.find_element_by_id("su").click()

  time.sleep(2)

  browser.find_element_by_id("kw").clear()

  time.sleep(1)

  browser.find_element_by_id("kw").send_keys("百度")

  browser.find_element_by_id("su").click()

  time.sleep(2)

  browser.find_element_by_id("kw").clear()

  time.sleep(1)

  browser.close()  

# 退出,清除浏览器缓存

  browser.quit() 

if __name__ == "__main__":

  while True:

    bd()

5、运行程序,如下图所示,可自动化搜索。

python+selenium实现自动化百度搜索关键词

Python 相关文章推荐
python分割和拼接字符串
Nov 01 Python
Python中列表(list)操作方法汇总
Aug 18 Python
浅谈Python中数据解析
May 05 Python
Python调用命令行进度条的方法
May 05 Python
Android模拟器无法启动,报错:Cannot set up guest memory ‘android_arm’ Invalid argument的解决方法
Jul 01 Python
Python从零开始创建区块链
Mar 06 Python
python和flask中返回JSON数据的方法
Mar 26 Python
python ChainMap的使用和说明详解
Jun 11 Python
Python字符串大小写转换拼接删除空白
Sep 19 Python
Python如何实现自带HTTP文件传输服务
Jul 08 Python
总结Python连接CS2000的详细步骤
Jun 23 Python
python编程学习使用管道Pipe编写优化代码
Nov 20 Python
用Q-learning算法实现自动走迷宫机器人的方法示例
Jun 03 #Python
Python多进程方式抓取基金网站内容的方法分析
Jun 03 #Python
Python多进程入门、分布式进程数据共享实例详解
Jun 03 #Python
Python3实现定时任务的四种方式
Jun 03 #Python
500行Python代码打造刷脸考勤系统
Jun 03 #Python
Python学习笔记之pandas索引列、过滤、分组、求和功能示例
Jun 03 #Python
Python学习笔记之抓取某只基金历史净值数据实战案例
Jun 03 #Python
You might like
PHP 应用程序的安全 -- 不能违反的四条安全规则
2006/11/26 PHP
php插入中文到sqlserver 2008里出现乱码的解决办法分享
2012/07/19 PHP
PHP跨时区(UTC时间)应用解决方案
2013/01/11 PHP
两种php实现图片上传的方法
2016/01/22 PHP
PHP编写简单的App接口
2016/08/28 PHP
Thinkphp5 自定义上传文件名的实现方法
2019/07/23 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
javascript父、子页面交互技巧总结
2014/08/08 Javascript
教你如何在Node.js中使用jQuery
2016/08/28 Javascript
Bootstrap CSS组件之导航条(navbar)
2016/12/17 Javascript
Bootstrap源码解读网格系统(3)
2016/12/22 Javascript
微信小程序分页加载的实例代码
2017/07/11 Javascript
JavaScript 用fetch 实现异步下载文件功能
2017/07/21 Javascript
Three.js利用orbit controls插件(轨道控制)控制模型交互动作详解
2017/09/25 Javascript
Vue2.0 给Tab标签页和页面切换过渡添加样式的方法
2018/03/13 Javascript
jQuery实现文件编码成base64并通过AJAX上传的方法
2018/04/12 jQuery
JS拖动选择table里的单元格完整实例【基于jQuery】
2019/05/28 jQuery
进一步探究Python的装饰器的运用
2015/05/05 Python
Python基于递归实现电话号码映射功能示例
2018/04/13 Python
python实现推箱子游戏
2020/03/25 Python
python3安装crypto出错及解决方法
2019/07/30 Python
Python字符串查找基本操作代码案例
2020/10/27 Python
Python爬虫之Selenium实现键盘事件
2020/12/04 Python
python绘图pyecharts+pandas的使用详解
2020/12/13 Python
python 利用panda 实现列联表(交叉表)
2021/02/06 Python
HTML5触摸事件实现移动端简易进度条的实现方法
2018/05/04 HTML / CSS
香港太阳眼镜网上商店:SmartBuyGlasses香港
2016/07/22 全球购物
美国宠物用品网站:Value Pet Supplies
2018/03/17 全球购物
趣味体育活动方案
2014/02/08 职场文书
班长竞选演讲稿
2014/04/24 职场文书
信访稳定工作汇报
2014/10/27 职场文书
房屋分割离婚协议书范本
2014/12/01 职场文书
2015年政治教研组工作总结
2015/07/22 职场文书
交通安全宣传标语(100条)
2019/08/22 职场文书
js Proxy的原理详解
2021/05/25 Javascript
SQL写法--行行比较
2021/08/23 SQL Server