Python实现爬取需要登录的网站完整示例


Posted in Python onAugust 19, 2017

本文实例讲述了Python爬取需要登录的网站实现方法。分享给大家供大家参考,具体如下:

import requests
from lxml import html
# 创建 session 对象。这个对象会保存所有的登录会话请求。
session_requests = requests.session()
# 提取在登录时所使用的 csrf 标记
login_url = "https://bitbucket.org/account/signin/?next=/"
result = session_requests.get(login_url)
tree = html.fromstring(result.text)
authenticity_token = list(set(tree.xpath("//input[@name='csrfmiddlewaretoken']/@value")))[0]
payload = {
  "username": "<你的用户名>",
  "password": "<你的密码>",
  "csrfmiddlewaretoken": authenticity_token # 在源代码中,有一个名为 “csrfmiddlewaretoken” 的隐藏输入标签。
}
# 执行登录
result = session_requests.post(
  login_url,
  data = payload,
  headers = dict(referer=login_url)
)
# 已经登录成功了,然后从 bitbucket dashboard 页面上爬取内容。
url = 'https://bitbucket.org/dashboard/overview'
result = session_requests.get(
  url,
  headers = dict(referer = url)
)
# 测试爬取的内容
tree = html.fromstring(result.content)
bucket_elems = tree.findall(".//span[@class='repo-name']/")
bucket_names = [bucket.text_content.replace("n", "").strip() for bucket in bucket_elems]
print(bucket_names)

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中的闭包详细介绍和实例
Nov 21 Python
Python中绑定与未绑定的类方法用法分析
Apr 29 Python
python 给DataFrame增加index行名和columns列名的实现方法
Jun 08 Python
Python使用win32com模块实现数据库表结构自动生成word表格的方法
Jul 17 Python
python numpy 按行归一化的实例
Jan 21 Python
Python基础之函数的定义与使用示例
Mar 23 Python
Python中使用logging和traceback模块记录日志和跟踪异常
Apr 09 Python
python中使用ctypes调用so传参设置遇到的问题及解决方法
Jun 19 Python
python3中sys.argv的实例用法
Apr 24 Python
vscode写python时的代码错误提醒和自动格式化的方法
May 07 Python
pytorch训练神经网络爆内存的解决方案
May 22 Python
Python学习之异常中的finally使用详解
Mar 16 Python
Python获取当前页面内所有链接的四种方法对比分析
Aug 19 #Python
Python基于numpy灵活定义神经网络结构的方法
Aug 19 #Python
Python正则捕获操作示例
Aug 19 #Python
python 删除大文件中的某一行(最有效率的方法)
Aug 19 #Python
在java中如何定义一个抽象属性示例详解
Aug 18 #Python
python中将函数赋值给变量时需要注意的一些问题
Aug 18 #Python
python中子类调用父类函数的方法示例
Aug 18 #Python
You might like
PHP常见的序列化与反序列化操作实例分析
2019/10/28 PHP
基于jquery+thickbox仿校内登录注册框
2010/06/07 Javascript
基于jquery的cookie的用法
2011/01/10 Javascript
jquery实现网站超链接和图片提示效果
2013/03/21 Javascript
用javascript判断IE版本号简单实用且向后兼容
2013/09/11 Javascript
jQuery实现径向动画菜单效果
2015/07/17 Javascript
JQuery validate插件Remote用法大全
2016/05/15 Javascript
window.onload绑定多个事件的两种解决方案
2016/05/15 Javascript
Javascript函数中的arguments.callee用法实例分析
2016/09/16 Javascript
AngularJs上传前预览图片的实例代码
2017/01/20 Javascript
利用transition实现文字上下抖动的效果
2017/01/21 Javascript
vue过渡和animate.css结合使用详解
2017/06/14 Javascript
js使用Promise实现简单的Ajax缓存
2018/11/14 Javascript
bootstrap与pagehelper实现分页效果
2018/12/29 Javascript
[49:08]FNATIC vs Infamous 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
Python 网络编程起步(Socket发送消息)
2008/09/06 Python
python实现数通设备tftp备份配置文件示例
2014/04/02 Python
python使用MySQLdb访问mysql数据库的方法
2015/08/03 Python
详解MySQL数据类型int(M)中M的含义
2016/11/20 Python
浅谈tensorflow中几个随机函数的用法
2018/07/27 Python
详解python3中的真值测试
2018/08/13 Python
如何用Python来理一理红楼梦里的那些关系
2019/08/14 Python
pytorch中torch.max和Tensor.view函数用法详解
2020/01/03 Python
Python坐标轴操作及设置代码实例
2020/06/04 Python
打造经典复古风格的品牌:Alice + Olivia(爱丽丝+奥利维亚)
2016/09/07 全球购物
英国广泛的照明产品网站:Lights4living
2018/01/28 全球购物
人力资源管理毕业生自荐信
2013/11/21 职场文书
教师党员思想汇报
2014/01/06 职场文书
新领导上任欢迎词
2014/01/13 职场文书
运动会100米解说词
2014/01/23 职场文书
学校门卫岗位职责
2014/03/16 职场文书
病媒生物防治方案
2014/05/13 职场文书
投资意向协议书
2015/01/29 职场文书
2015年三八妇女节活动总结
2015/02/06 职场文书
音乐会主持人开场白
2015/05/28 职场文书
利用python实时刷新基金估值(摸鱼小工具)
2021/09/15 Python