zoukankan      html  css  js  c++  java
  • selenium,webdriver模仿浏览器访问百度 基础1

    这是一种比较好的反反爬技术

    #安装:pip install selenium=2.48.0
    #显示:pip show selenium
    #卸载:pip uninstall selenium
    
    #模拟用户行为
    from selenium import webdriver
    import os
    import time
    from selenium import common
    
    #生成一个浏览器对象
    driver = webdriver.PhantomJS()
    
    #访问
    driver.get('http://www.baidu.com/')
    
    #创建文件夹存放数据
    root_dir = 'baidu'
    if not os.path.exists(root_dir):
        os.mkdir(root_dir)
    
    #存储的文件夹及命名的文件名
    file_name = root_dir + '/homepage.png'
    #截屏并保存图片
    driver.save_screenshot(file_name)
    
    #模拟用户行为操作
    timeout = 4
    count = 0
    #输入行为
    while True:
        #只进行访问四次  访问不成功就终止
        if count > 4:
            break
        try:
            #通过id号找到百度的输入框
            obj = driver.find_element_by_id('kw')
            #在找到的输入框中 输入文字
            obj.send_keys(u'章丘铁锅')
            print(obj)
            break
        except common.exceptions.NoSuchElementException as e:
            print(e)
            #报错后 等待4秒 再次访问
            time.sleep(timeout)
            count += 1
    #存储的文件夹及命名的文件名
    file_name = root_dir + '/homepage_zhangqiutieguo.png'
    #截屏并保存图片
    driver.save_screenshot(file_name)
    
    #模拟鼠标点击操作
    #通过id号找到点击按钮
    su = driver.find_element_by_id('su')
    #点击
    su.click()
    
    #等到4秒 等页面加载完成
    time.sleep(4)
    #存储的文件夹及命名的文件名
    file_name = root_dir + '/homepage_search.png'
    #截屏并保存图片  运行后就可以看到 相当于在百度输入章丘铁锅后的页面  想想都很激动呢
    driver.save_screenshot(file_name)
  • 相关阅读:
    python之-- 异常
    实现Asp.Net Mvc4多级Views目录
    MVC控制下输出图片、javascript与json格式
    公共增删改查(MVC+三层架构)
    工厂方法模式
    简单工厂模式
    单例模式
    JavaScript正则表达式
    JavaScript对象与数组
    JavaScript数组排序
  • 原文地址:https://www.cnblogs.com/zhangboblogs/p/8562400.html
Copyright © 2011-2022 走看看