爬虫验证码-手动输入

本文介绍了一种处理网站登录验证码的方法,通过下载验证码到本地,然后手动输入以实现爬虫的模拟登录。在请求过程中,使用会话保持了验证码、表单令牌等关键数据的一致性。
摘要由CSDN通过智能技术生成

一般网站登录的时候会有验证码的问题,下面是将验证码下载到本地,手动输入模拟登录。在请求的时候使用会话是为了保证获取的验证码、表单令牌等数据一致

import requests

from bs4 import BeautifulSoup

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36'
                  ' (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36'
}


def download_code(s, url):
    resp = s.get(url, headers=headers)
    text_code = resp.encoding
    text = resp.content.decode(text_code, 'ignore')
    html = BeautifulSoup(text, 'lxml')
    # 获取图片链接
    img_src = 'https://so.gushiwen.org' + html.find(id='imgCode')['src']

    # 下载图片
    img = s.get(img_src, headers=headers)

    img_text = img.content
    with open("yan.jpg", 'wb') as f:
        f.write(img_text)


def get_vic(s):
    url = "https://so.gushiwen.org/user/login.aspx"

    # 获取表单登录令牌
    resp = s.get(url, headers&#
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值