Python爬虫之采集登陆后才能看到数据的方法是什么
发表于:2025-02-12 作者:千家信息网编辑
千家信息网最后更新 2025年02月12日,这篇文章主要介绍"Python爬虫之采集登陆后才能看到数据的方法是什么",在日常操作中,相信很多人在Python爬虫之采集登陆后才能看到数据的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好
千家信息网最后更新 2025年02月12日Python爬虫之采集登陆后才能看到数据的方法是什么
这篇文章主要介绍"Python爬虫之采集登陆后才能看到数据的方法是什么",在日常操作中,相信很多人在Python爬虫之采集登陆后才能看到数据的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Python爬虫之采集登陆后才能看到数据的方法是什么"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
爬虫在采集网站的过程中,部分数据价值较高的网站,会限制访客的访问行为。这种时候建议通过登录的方式,获取目标网站的cookie,然后再使用cookie配合代理IP进行数据采集分析。
1 使用表单登陆
这种情况属于post请求,即先向服务器发送表单数据,服务器再将返回的cookie存入本地。
#! -*- encoding:utf-8 -*- import requests import random import requests.adapters # 要访问的目标页面 targetUrlList = [ "https://httpbin.org/ip", "https://httpbin.org/headers", "https://httpbin.org/user-agent", ] # 代理服务器(产品官网 www.16yun.cn) proxyHost = "t.16yun.cn" proxyPort = "31111" # 代理隧道验证信息 proxyUser = "username" proxyPass = "password" proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % { "host": proxyHost, "port": proxyPort, "user": proxyUser, "pass": proxyPass, } # 设置 http和https访问都是用HTTP代理 proxies = { "http": proxyMeta, "https": proxyMeta, } # 访问三次网站,使用相同的Session(keep-alive),均能够保持相同的外网IP s = requests.session() # 设置cookie cookie_dict = {"JSESSION":"123456789"} cookies = requests.utils.cookiejar_from_dict(cookie_dict, cookiejar=None, overwrite=True) s.cookies = cookies for i in range(3): for url in targetUrlList: r = s.get(url, proxies=proxies) print r.text
2 使用cookie登陆
使用cookie登陆,服务器会认为你是一个已登陆的用户,所以就会返回给你一个已登陆的内容。因此,需要验证码的情况可以使用带验证码登陆的cookie解决。
response_captcha = requests_session.get(url=url_login, cookies=cookies) response1 = requests.get(url_login) # 未登陆 response2 = requests_session.get(url_login) # 已登陆,因为之前拿到了Response Cookie! response3 = requests_session.get(url_results) # 已登陆,因为之前拿到了Response Cookie!
若存在验证码,此时采用response = requests_session.post(url=url_login, data=data)是不行的,做法应该如下:
response_captcha = requests_session.get(url=url_login, cookies=cookies) response1 = requests.get(url_login) # 未登陆 response2 = requests_session.get(url_login) # 已登陆,因为之前拿到了Response Cookie! response3 = requests_session.get(url_results) # 已登陆,因为之前拿到了Response Cookie!
到此,关于"Python爬虫之采集登陆后才能看到数据的方法是什么"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
登陆
数据
方法
爬虫
网站
服务器
代理
学习
服务
验证
相同
情况
更多
目标
表单
帮助
不行
实用
接下来
产品
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库技师函数依赖
信息化及网络安全管理
服务器硬盘背板怎么连接电脑用
鸿业网络安全儿童画
如何连接程序中的数据库文件
摩尔庄园重新开服务器
张掖网络安全工程师视频教程
数据库有哪几种工具
wlan软件开发
asp网站服务器搭建
网络信息技术发展数据库
oracle 只读数据库
网络安全必读书目
服务器存在哪些安全威胁
安阳市委网络安全局
英雄联盟服务器修好没有
富士达服务器数据连接线
技术书软件开发
网络安全为人民导学案
服务器配置与管理的地位
u8数据库结构定义
数据库镜像技术的作用
怎么删除各个网站大数据库
深圳互联网科技企业排行
铁岭软件开发招聘
蚌埠市网络安全应急中心面试
闵行区智能化软件开发协议
地球加速 高速服务器
什么是安全关联数据库
无领导小组面试5G网络安全