爬虫解决验证码,用requests创建session会话对象

本文介绍如何利用Python的requests库中的session会话对象来应对爬虫过程中的验证码问题。通过session,我们可以保持请求之间的某些状态,提高爬取效率。
摘要由CSDN通过智能技术生成
import requests
from urllib import request
import re

# 创建一个回话
session=requests.session()
#请求携带的表单数据
form={
    'form_email':'',
    'form_password':''
}

def login():
    login_url='https://accounts.douban.com/login'
    form = {
        'form_email': '',
        'form_password': ''
    }
    #发送请求
    response=session.post(login_url,data=form)
    # 设置编码
    response.encoding=response.apparent_encoding
    # 获取数据
    html=response.text
    # print(html)
    if  'captcha_image' in html:
        # 编译正则(获取图片下载链接地址)
        captcha_pat=re.compile(r'id="captcha_image" src="(.+?)"')
        #搜索数据(图片)
        res=captcha_pat.search(html)
        #获取数据(图片链接)
        captcha=res.group(1)
        #写入图片文件    
        request.urlretrieve(captcha,'douban.png'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值