用 Python 登录主流网站,我们的数据爬取少不了它

Python 爬虫模拟登录方法汇总 摘要: 在进行爬虫时,除了常见的不用登录就能爬取的网站,还有一类需要先登录的网站。比如豆瓣、知乎,以及上一篇文章中的桔子网。这一类网站又可以分为:只需输入帐号密码、除了帐号密码还需输入或点击验证码等类型。本文以只需输入账号密码就能登录的桔子网为例,介绍模拟登录常用的 3 种方法。 POST 请求方法:需要在后台获取登录的 URL并填写请求体参数,然后 POST 请求登录,相对麻烦; 添加 Coo... 阅读详情

不论是自然语言处理还是计算机视觉,做机器学习算法总会存在数据不足的情况,而这个时候就需要我们用爬虫获取一些额外数据。这个项目介绍了如何用 Python 登录各大网站,并用简单的爬虫获取一些有用数据,目前该项目已经提供了知乎、B 站、和豆瓣等 18 个网站的登录方法。

项目地址:https://github.com/CriseLYJ/awesome-python-login-model

作者收集了一些网站的登陆方式和爬虫程序,有的通过 selenium 登录,有的则通过抓包直接模拟登录。作者希望该项目能帮助初学者学习各大网站的模拟登陆方式,并爬取一些需要的数据。

作者表示模拟登陆基本采用直接登录或者使用 selenium+webdriver 的方式,有的网站直接登录难度很大,比如 qq 空间和 bilibili 等,采用 selenium 登录相对轻松一些。虽然在登录的时候采用的是 selenium,但为了效率,我们也可以在登录后维护得到的 cookie。登录后,我们就能调用 requests 或者 scrapy 等工具进行数据采集,这样数据采集的速度可以得到保证。

目前已经完成的网站有:

  • Facebook

  • 无需身份验证即可抓取 Twitter 前端 API

  • 微博网页版

  • 知乎

  • QQZone

  • 优快云

  • 淘宝

  • Baidu

  • 果壳

  • JingDong 模拟登录和自动申请京东试用

  • 163mail

  • 拉钩

  • Bilibili

  • 豆瓣

  • Baidu2

  • 猎聘网

  • 微信网页版登录并获取好友列表

  • Github

  • 爬取图虫相应的图片

如下所示,如果我们满足依赖项,那么就可以直接运行代码,它会在图虫网站中下载搜索到的图像。

如下所示为搜索「秋天」,并完成下载的图像:

每一个网站都会有对应的登录代码,有的还有数据的爬取代码。以豆瓣为例,主要的登录函数如下所示,它会获取验证码、处理验证码、返回登录数据完成登录,并最后保留 cookies。

def login():  
    captcha, captcha_id = get_captcha()  
    # 增加表数据  
    datas['captcha-solution'] = captcha  
    datas['captcha-id'] = captcha_id  
    login_page = session.post(url, data=datas, headers=headers)  
    page = login_page.text  
    soup = BeautifulSoup(page, "html.parser")  
    result = soup.findAll('div', attrs={'class': 'title'})  
    #进入豆瓣登陆后页面,打印热门内容  
    for item in result:  
        print(item.find('a').get_text())  
    # 保存 cookies 到文件,  
    # 下次可以使用 cookie 直接登录,不需要输入账号和密码  
    session.cookies.save()  

其中获取并解决验证码的函数如下:

def get_captcha():  
    '''  
    获取验证码及其ID  
    '''  
    r = requests.post(url, data=datas, headers=headers)  
    page = r.text  
    soup = BeautifulSoup(page, "html.parser")  
    # 利用bs4获得验证码图片地址  
    img_src = soup.find('img', {'id': 'captcha_image'}).get('src')  
    urlretrieve(img_src, 'captcha.jpg')  
    try:  
        im = Image.open('captcha.jpg')  
        im.show()  
        im.close()  
    except:  
        print('到本地目录打开captcha.jpg获取验证码')  
    finally:  
        captcha = input('please input the captcha:')  
        remove('captcha.jpg')  
    captcha_id = soup.find(  
        'input', {'type': 'hidden', 'name': 'captcha-id'}).get('value')  
    return captcha, captcha_id  

当然这些都是简单的演示,在 GitHub 项目中可以找到更多的示例。此外,作者表明由于网站策略或者样式改变而导致代码失效,我们也可以提 Issue 或 Pull Requests。最后,该项目未来还会一直维护,很多东西哦也会慢慢改进,项目作者表明:

  • 项目写了一段时间后,发现代码风格、程序易用性、可扩展性、代码的可读性,都存在一定的问题,所以接下来最重要的是重构代码,让大家可以更容易的做出一些自己的小功能;

  • 如果读者觉得某个网站的登录很有代表性,可以在项目 issue 中提出;

  • 网站的登录机制有可能经常的变动,所以当现在的模拟的登录的规则不能使用的时候,请项目在 issue 中提出。

以上就是“用 Python 登录主流网站,我们的数据爬取少不了它”的全部内容,希望对你有所帮助。
​
​关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、Python必备开发工具

img

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

五、Python练习题

检查学习结果。

img

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

img

最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至优快云官方,朋友如果需要可以直接微信扫描下方优快云官方认证二维码免费领取【保证100%免费】。

用python爬取需要登录的网站 如何爬取需要登录的网站创建一个session用fiddler抓取请求参数输入模拟浏览器发起请求获取userkey备用登录后,开心地请求该网站的其他页面 假如要爬取某个网页,但是该网页要登录后才能进行访问,刚好登录的时候不需要验证码,那么可以用如下方法 创建一个session 当用浏览器登录网站后,服务器会自动创建一个session对象,在session的有效期内,session对象中的变量在整个用... 阅读详情

相关推荐

用Python爬取需要登录的网站

最近我必须执行一项从一个需要登录的网站上爬取一些网页的操作。它没有我想象中那么简单,因此我决定为它写一个辅助教程。 在本教程中,我们将从我们的bitbucket账户中爬取一个项目列表。 教程中的代码可以从我的 Github 中找到。 我们将会按照以下步骤进行: 提取登录需要的详细信息 执行站点登录 爬取所需要的数据 在本教程中,我使用了以下包(可以在 requirements.tx...

老K带你学Python 5097

Python模拟登陆网页的三种方法

爬虫模拟网页登陆,获取网页内容

LSH1628340121的博客 2万+

如何用 Python 爬取需要登录的网站?

最近我必须执行一项从一个需要登录的网站上爬取一些网页的操作。它没有我想象中那么简单,因此我决定为它写一个辅助教程。 在本教程中,我们将从我们的bitbucket账户中爬取一个项目列表。 教程中的代码可以从我的 Github 中找到。 我们将会按照以下步骤进行: 提取登录需要的详细信息 执行站点登录 爬取所需要的数据 在本教程中,我使用了以下包(可以在 requirements.txt 中找到): requests lxml 步骤一:研究该网站 打开登录页面 进入以下页面 “bitbucket

8605

Python自动化登录网站(图文详解)

如何快速实现网站自动化登录并且实现简单的点击和输入功能?Selenium!你值得拥有

m0_57024162的博客 1万+

如何用Python爬取网页数据,Python爬取网页详细教程

如何用Python爬取网页数据,Python爬取网页详细教程

python03013的博客 1万+

Python 爬虫实战,模拟登陆爬取数据

Python 爬虫实战,模拟登陆爬去数据 从0记录爬取某网站上的资源连接: 模拟登陆 爬取数据 保存到本地 结果演示: 源网站展示: 爬到的本地文件展示: 环境准备: python环境安装 略 安装requests库 使用以下命令安装requests库 #(如果使用的是anaconda 下虚拟环境里的python 请在虚拟环境里执行下边命令) pip install requests 安装bs4库 使用以下命令安装requests库 #(如果使用的是anaconda 下虚拟环境里的pyth

xianfishY的博客 9751

用Python登录主流网站,我们的数据爬取少不了它!

不论是自然语言处理还是计算机视觉,做机器学习算法总会存在数据不足的情况,而这个时候就需要我们用爬虫获取一些额外数据。这个项目介绍了如何用 Python 登录各大网站,并用简单的爬虫获取一些有用数据,目前该项目已经提供了知乎、B 站、和豆瓣等 18 个网站的登录方法。作者收集了一些网站的登陆方式和爬虫程序,有的通过 selenium 登录,有的则通过抓包直接模拟登录。作者希望该项目能帮助初学者学习各大网站的模拟登陆方式,并爬取一些需要的数据。

2401_84208172的博客 1162

Python爬取网站用户手机号_主流网站 Python 爬虫模拟登陆方法汇总

欢迎关注我的公众号:高级农民工,博客:高级农民工,阅读体验更好。摘要:介绍微信、知乎、新浪等一众主流网站的模拟登陆爬取方法。网络上有形形色色的网站,不同类型的网站爬虫策略不同,难易程度也不一样。从是否需要登陆来说,一些简单网站不需要登陆就可以爬,比如之前爬过的猫眼电影、东方财富网等。有一些网站需要先登陆才能爬,比如知乎、微信等。这类网站在模拟登陆时需要处理验证码、js 加密参数这些问题,爬取难度会...

weixin_39867125的博客 3591

python登录网站后爬取数据_用 Python 登录主流网站,我们的数据爬取少不了它

不论是自然语言处理还是计算机视觉,做机器学习算法总会存在数据不足的情况,而这个时候就需要我们用爬虫获取一些额外数据。这个项目介绍了如何用 Python 登录各大网站,并用简单的爬虫获取一些有用数据,目前该项目已经提供了知乎、B 站、和豆瓣等 18 个网站的登录方法。项目作者:CriseLYJ。作者收集了一些网站的登陆方式和爬虫程序,有的通过 selenium 登录,有的则通过抓包直接模拟登录。作者...

weixin_39636079的博客 359

【python实战】怎么用python自动登录优快云

目录 先上效果 页面分析 引入selenium模块及驱动 1、并将安装好的Chromedriver.exe引入到代码中 2、浏览器驱动引入 爬虫模拟登录 1、设置网址链接 2、切换到账号密码登录 3、找到用户名密码的控件ID 4、注入用户名和密码 5、模拟登录点击 成功登录优快云 先上效果 页面分析 优快云登录页面如下图 引入selenium模块及驱动 1、并将安装好的Chromedriver.exe引入到代码中 # -*- coding:utf-8 -*-

信息安全领域优质创作者|操作系统领域专家 1万+

python 实现登录网页的操作方法

有些网页需要你登录之后才可以访问,你需要提供账户和密码。 只要在发送http请求时,带上含有正常登陆的cookie就可以了。 1、首先我们要先了解cookie的工作原理。 Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key/value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用cookie)。Cookie名称和值可以由服务器端开发自己定义,对于JSP而言也可以直接写入jsessionid,这样服务器可以知道该用户是否合法用户以及是否需要重新登录等。 2、之后我们要获取到用户正常登录的c

facebook网页版登录_用 Python 登录主流网站,我们的数据爬取少不了它

不论是自然语言处理还是计算机视觉,做机器学习算法总会存在数据不足的情况,而这个时候就需要我们用爬虫获取一些额外数据。这个项目介绍了如何用 Python 登录各大网站,并用简单的爬虫获取一些有用数据,目前该项目已经提供了知乎、B 站、和豆瓣等 18 个网站的登录方法。项目作者:CriseLYJ。项目地址:https://github.com/CriseLYJ/awesome-python-login...

weixin_39867509的博客 1020

SPI 协议帧格式深度解析:从 8 位数据到 16 位扩展的 3 种模式

本文深入解析SPI协议的帧格式,涵盖从8位标准到16位扩展的三种模式。通过详细讲解SPI时钟模式、数据宽度配置及实际应用案例,帮助开发者掌握SPI外设的深度定制能力,提升嵌入式系统开发效率。特别适用于连接传感器、存储器和显示器等高速通讯场景。

weixin_34110749的博客 345

如何用 Python 爬取需要登录的网站?

(点击上方蓝字,快速关注我们)英文:Tzahi Vidas   编译: 伯乐在线 -   ebigear  http://python.jobbole.com/83588/最近我必须执行一项从一个需要登录的网站上爬取一些网页的操作。它没有我想象中那么简单,因此我决定为它写一个辅助教程。在本教程中,我们将从我们的bitbucket账户中爬取一个项目列表。教程中的代码可以从我的 Github 中找到。

Python开发者 3万+

【博弈论】势博弈(potential game)、EPG以及最佳响应、Nash均衡和帕累托(pareto)最优的理解

文章目录前言一、Potential game二、Nash均衡和Pareto-optimal(帕累托最优)1.Nash 均衡2.Pareto最优三、Best response(最佳响应)四、Exact potential game(EPG)1.合作-傀儡博弈2.合作博弈3.傀儡博弈4.自激博弈5.双边对称交互博弈使用理解 前言 本文主要详细讲解potential game的概念以及Exact potential game 的定义和分类,以及这么博弈方法是如何在论文中引入并使用的,本文仅是对自己在该模块

weixin_44535200的博客 2万+

深度学习入门:使用CMSIS-NN在微控制器上部署模型的完整指南与Python Jupyter实践

CMSIS-NN是ARM为Cortex-M系列微控制器设计的神经网络库。它旨在提供一套高效、轻量级的神经网络API,使得开发者可以在资源受限的微控制器上运行深度学习模型。CMSIS-NN优化了各种常见的神经网络层,如卷积层、全连接层等,确保它们在微控制器上的运行效率。# 定义模型])# 编译模型# 训练模型这样,我们就得到了一个简单的手写数字识别模型。注意:为了简洁和清晰,本文中的代码可能不是最优的或最完整的实现。为了获得完整的项目和更多的优化技巧,请下载完整项目。

m0_57781768的博客 5884

python登录网站后爬取数据_需要登陆网站后才能获取数据的页面爬取

本文转载自以下链接:https://www.makcyun.top/web_scraping_withpython8.html目的是万一博主网站无法访问到的话自己需要学习的东西可就不存在了.本文需要学习的地方,使用三种不同的方式爬取需要登录才能获取数据的网站数据POST 请求方法:需要在后台获取登录的 URL并填写请求体参数,然后 POST 请求登录,相对麻烦;添加 Cookies 方法:先登录将...

weixin_39640085的博客 5730

Open3D (C++) 点云边界提取【2025最新版】

Compute the boundary points of a point cloud.The implementation is inspired by the PCL implementation. Reference:https://pointclouds.org/documentation/classpcl_1_1_boundary_estimation.html

点云侠的博客 871

python登录网站后爬取数据_如何用 Python 登录主流网站,爬取一些需要的数据

最近收集了一些网站的登陆方式和爬虫程序,有的通过 selenium 登录,有的则通过抓包直接模拟登录。作者希望该项目能帮助初学者学习各大网站的模拟登陆方式,并爬取一些需要的数据。作者表示模拟登陆基本采用直接登录或者使用 selenium+webdriver 的方式,有的网站直接登录难度很大,比如 qq 空间和 bilibili 等,采用 selenium 登录相对轻松一些。虽然在登录的时候采用的是...

weixin_39729262的博客 861

131、高通骁龙影像平台总览:Spectra ISP 各代架构演进与特性对比

摘要:本文深入分析了高通骁龙Spectra ISP从250到780代的架构演进与技术痛点,揭示了各代关键改进与隐藏问题。重点剖析了双ISP带宽分配、AI ISP黑盒决策、温度控制等实战问题,并给出具体解决方案(如寄存器配置、QoS调整等)。文章强调工程师需平衡带宽、功耗与画质的三角关系,建议调试时先关闭AI模块建立基线,关注统计引擎配置,并建立温度监控机制。最后指出理解架构局限比追求完美设计更重要,需要针对不同场景找到合适的妥协方案。(148字)

sundong_81的博客 207

道路施工检测 (construction) - 基于Mapillary Vistas数据集的YOLOv11目标检测及UI界面实现

目标检测是计算机视觉的重要任务,目标是识别图像中的目标物体类别及其位置(用边界框表示)。两阶段检测器:如Faster R-CNN,准确度高但速度较慢单阶段检测器:如YOLO系列、SSD,速度快且精度相对较好,适合实时场景数据量:约25,000张高分辨率街景图标注类型:语义分割、实例分割、多类别检测类别示例:construction, road, car, person, traffic sign等格式:COCO风格JSON标注。

YOLO 496

python怎么爬取网站所有用户_如何用 Python 爬取需要登录的网站?

最近我必须执行一项从一个需要登录的网站上爬取一些网页的操作。它没有我想象中那么简单,因此我决定为它写一个辅助教程。在本教程中,我们将从我们的bitbucket账户中爬取一个项目列表。教程中的代码可以从我的 Github 中找到。我们将会按照以下步骤进行:提取登录需要的详细信息执行站点登录爬取所需要的数据在本教程中,我使用了以下包(可以在 requirements.txt 中找到):requests...

weixin_39540271的博客 932

对称式目镜设计实例

对称式目镜设计实例

weixin_72050316的博客 1163

Python爬取网站数据

Python爬取网站数据 前言 什么是爬虫? 通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程 爬虫合法还是违法? 在法律上是不被禁止的 但是也有违法风险 爬虫带来的风险可以体现在如下2方面 爬虫干扰了被访问网站的正常运行 爬虫抓取了受到法律保护的特定类型的数据或信息 如果在使用编写爬虫的过程中避免违法 经常的优化自己的程序,避免干扰被访问网站的正常运行 在使用、传播爬取到的数据时,审查抓取到的内容 如果发现涉及到用户隐私或者商业机密等敏感内容 需要及时停止爬取并及时进行删除

qq_45601874的博客 4万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

python登录网站后爬取数据_快速爬取登录网站数据

该楼层疑似违规已被系统折叠隐藏此楼查看此楼部分网站需要登录才能允许访问,因此爬虫需要获取登录cookie,然后通过爬虫代理使用该cookie进行数据采集。本示例按照以上流程进行实现如下:1 模拟表单登陆通过于post请求向服务器发送表单数据,爬虫将返回的cookie进行存储。import requestsdata = {'data1':'XXXXX', 'data2':'XXXXX'}respo...

weixin_39942033的博客 2962

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

上一篇: 4年python,总结一些改善Python程序的建议
下一篇: Python制作微信自动回复机器人,打游戏时自动回复女朋友消息
壹只小小码农
博客等级 码龄5年 8101粉丝 1334原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值