python实现爬虫

  • 解决print()中文的乱码问题!!!
# -*-coding:utf-8 -*-
import io
import sys
#改变标准输出的默认编码(改变中文输出的乱码问题)
sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')
  •   selenium+chrome 浏览器进行爬虫
  • 下载chrome的浏览器驱动(http://chromedriver.storage.googleapis.com/index.html)下载响应chrome浏览器版本(浏览器的版本 在chrome://version/这个网页可以看到)的即可(win32 就行)安装到C:Program Files (x86)GoogleChromeApplication  下面(exe文件)
  • #导入selenium的浏览器驱动接口
    from selenium import webdriver
    from time import sleep
    #驱动路径 记得前面加r 防止字符转义
    #!!!注意这里必须把驱动程序中的路径写完整,后面必须加上这个chromedriver.exe  否则会报错 执行不成功
    driver = webdriver.Chrome("C:Program Files (x86)GoogleChromeApplicationchromedriver.exe")
    #用driver打开百度页面  后面的地址是百度的地址
    driver.get('http://www.baidu.com')
    # 查找页面的“设置”选项,发送一个你要搜索的值,并进行点击
    # 获取页面名为wrapper的id标签的文本内容
    data = driver.find_element_by_id("wrapper").text
    print(data.encode('GB18030'))
    # 打印页面标题 "百度一下,你就知道"
    print(driver.title)
    # 生成当前页面快照并保存
    driver.save_screenshot("baidu.png")
    driver.find_element_by_id('kw').send_keys('人民币')
    sleep(2)
    #并进行点击
    driver.find_element_by_id('su').click()
    sleep(4)
    #退出驱动程序
    driver.quit()

    (参考:https://blog.csdn.net/u010986776/article/details/79266448

原文地址:https://www.cnblogs.com/kekexxr/p/11552362.html