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

yipeiwu_com5年前Python基础

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

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

2、安装selenium库。

使用 pip install selenium 安装即可。

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

3、获取爬虫接口链接。

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

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、运行程序,如下图所示,可自动化搜索。

相关文章

Windows下Anaconda2安装NLTK教程

Windows下Anaconda2安装NLTK教程

本文记录了Anaconda2安装NLTK的方法,供大家参考,具体内容如下 先看我的python和Anaconda版本 启动anaconda命令窗口 开始> 所有程序> a...

Python中urllib2模块的8个使用细节分享

Python 标准库中有很多实用的工具类,但是在具体使用时,标准库文档上对使用细节描述的并不清楚,比如 urllib2 这个 HTTP 客户端库。这里总结了一些 urllib2 库的使用...

Python获取系统所有进程PID及进程名称的方法示例

本文实例讲述了Python获取系统所有进程PID及进程名称的方法。分享给大家供大家参考,具体如下: psutil模块中提供了进程管理方法,引用其中的几个方法就能够获得进程的相关信息。简单...

python装饰器实例大详解

一.作用域 在python中,作用域分为两种:全局作用域和局部作用域。  全局作用域是定义在文件级别的变量,函数名。而局部作用域,则是定义函数内部。  关于作用域,我们要理解两点:   ...

Python创建数字列表的示例

【一】range()函数 在python中可以使用range()函数来产生一系列数字 for w in range(1,11): print(w) 输出: 1 2 3 4 5...