美文网首页
爬虫登陆带有图形验证码的网站

爬虫登陆带有图形验证码的网站

作者: 故事的开头是个码农 | 来源:发表于2018-06-14 17:28 被阅读0次

此篇文件讲解如何登陆带有图形验证码的网站并爬取数据

原理:

1.利用webdriver驱动打开登陆页面

2.肉眼识别图形验证码

3.爬虫登陆网站并且开始抓取数据

4.抓取数据的原理也是利用webdriver打开页面,然后分析页面哦~

注:我使用火狐浏览器,需要安装驱动(geckodriver.exe),其他浏览器也需要安装驱动,网上搜搜就可以了哦

安装依赖项

pip install selenium

可使用以下命令查看是否安装成功

pip show selenium

如果出现版本号相关的内容就安装成功了

具体的思路直接上代码吧

from selenium import webdriver
import time

def loginSys(loginName, password):
    '''
    登陆
    利用webdriver驱动打开浏览器,操作页面
    此处使用火狐浏览器
    '''
    driver = webdriver.Firefox()
    driver.get('登陆的网址')
    driver.implicitly_wait(0.2)
    LoginTitle = driver.title

    # while 1:
    result = driver.title
    if LoginTitle == result:
  
        vcode = input("vcode:")  # 请求验证码,人工识别后输入

        # 自动登录
        driver.find_element_by_name('username').send_keys(loginName)  # 找到用户名录入框并填写
        time.sleep(0.2) #停顿模拟真实操作情况,降低被网站发现的几率
        driver.find_element_by_name('password').send_keys(password)  # 找到输入密码录入框并填写
        time.sleep(0.2)
        driver.find_element_by_name('safecode').send_keys(vcode)  # 找到验证码框并填写
        driver.implicitly_wait(0.2)
        driver.find_element_by_class_name("mybutton").click()  # 点击登录

        driver.implicitly_wait(10)

        # cookies传递,用于request爬取数据-此处没用到
        # 如果想用其他方式获取数据可使用此cookies
        cook = driver.get_cookies()
       
        #已经登陆成功了,此处写抓取数据的代码
        #打开页面,抓取数据   
        sniffData(driver)
          
        #抓取数据完毕关闭浏览器
        time.sleep(0.2)
        #最后关闭浏览器
        driver.close()
        

def sniffData(driver):
   '''
    抓取数据 
    '''
    #打开需要抓数据的页面
    driver.get('xxx.html')
    #根据类获取数据
    trs=driver.find_elements_by_class_name("universityname")
    for tr in trs:
        print(tr.text)
    

if __name__ == "__main__": 
    username="你的用户名"
    password="你的密码"
    loginSys(username, password)

此文章仅供学习交流

相关文章

  • 爬虫登陆带有图形验证码的网站

    此篇文件讲解如何登陆带有图形验证码的网站并爬取数据 原理: 1.利用webdriver驱动打开登陆页面 2.肉眼识...

  • 爬虫知乎登陆

    爬虫入门 功能:知乎算是对爬虫比较友好的网站了,但是!现在登陆验证码很恶心,需要点击图中倒立的文字!这让我们这种本...

  • 七麦反爬策略“终极”破解方案

    qimai_spider 七麦网站爬虫 (解决自动化登陆请求、破解请求签名算法、识别登陆验证码) 七麦是一个提供A...

  • python爬虫-30-python之图形验证码技术

    图形验证码是验证码的一种,是根据图里面的数字和字母输入进去,正确后便可以登陆程序的验证方式。现在很多网站都使用了这...

  • python3 反爬虫篇 某某罗某某网站自动登陆

    今后会发布更多反爬虫文章,点波关注不迷路哦。 在做罗某某网站登陆的时候,发现有滑块验证码 github地址 接下来...

  • 2018-09-04

    Java生成图形验证码与前端输入验证 在刷牛客时,遇到了关于web表单登陆中图形验证码实现的问题,所以试着将其编码...

  • Python 豆瓣手工输入验证码登录

    今天看爬虫教材,说要去模拟登陆豆瓣。。。那就去豆瓣吧。。刚进入网站一看,诶!不错,这个站点不需要验证码,心里窃喜一...

  • 五、图形验证码登录

    源码下载 摘要 前面都是通过用户名和密码直接登陆,现在添加一个图形验证码用于校验 一、图形验证码实现分析 在通用的...

  • 图形验证码识别技术

    图形验证码识别技术: 阻碍我们爬虫的。有时候正是在登录或者请求一些数据时候的图形验证码。因此这里我们讲解一种能将图...

  • 公司验证码接口被黑客攻击的解决方案

    背景: 昨晚公司的验证码接口被黑客攻击了后台妹纸准备让我换图形验证码,此图形验证码方案主要用作网站防止攻击,app...

网友评论

      本文标题:爬虫登陆带有图形验证码的网站

      本文链接:https://www.haomeiwen.com/subject/bagyeftx.html