利用Python模拟登录pastebin.com的实现方法


Posted in Python onJuly 12, 2019

任务

在https://pastebin.com网站注册一个账号,利用python实现用户的自动登录和创建paste。该任务需要分成如下两步利用python实现:

1.账号的自动登录

2.paste的自动创建

模拟账号登录

模拟登录,需要知道登录的URL是什么,那么登录URL怎么去看呢。

进入https://pastebin.com/之后,发现是以访客的身份进入的,点击身份图像的下拉中的LOGIN,进入登录页面,打开Chrome开发工具,选择Network,勾选Preserve log:

利用Python模拟登录pastebin.com的实现方法

输入用户名和密码,登录进去后,如下图:

 利用Python模拟登录pastebin.com的实现方法利用Python模拟登录pastebin.com的实现方法

这样就找到了需要提交的请求是什么,包括url,请求方法,提交的数据。POST请求是以什么格式提交的数据呢,在Request Header头部可以找到"content-type": "application/x-www-form-urlencoded",这个需要注意,因为经常遇到的还有一种提交形式叫"application/json"。

在用requests post提交请求的时候,如果是form表单形式传送,则将数据传入data参数,如果是以json格式传送,则需要将数据传入json参数。

登录之后,点击API菜单,可以从页面中 获取一个api_dev_key,后面实现自动创建paste的时候需要用到。

利用Python模拟登录pastebin.com的实现方法

自动登录和获取api_dev_key的代码

import requests
from lxml import etree
# 登录 https://pastebin.com/
login_url = "https://pastebin.com/login"
username = "kuang123321"
password = "xxxxxx"
api_dev_key = "4f45a996aa78079d8f7d14f104c45893"
session = requests.Session()
form_data = {
  "submit_hidden": "submit_hidden",
  "user_name": username,
  "user_password": password,
  "submit": "Login"
}
headers = {"content-type": "application/x-www-form-urlencoded"}
res = session.post(login_url, data=form_data, headers=headers)
print(res.status_code, res.url)
# 获取 api_dev_key
api_url = "https://pastebin.com/api"
text = session.get(api_url).content.decode("utf-8")
html = etree.HTML(text)
target_divs = html.xpath('//*[@id="content_left"]/div[9]/div/text()')
if target_divs:
  api_dev_key = target_divs[0]
  print(api_dev_key)
else:
  raise Exception("cannot find api_dev_key")

总结

以上所述是小编给大家介绍的利用Python模拟登录pastebin.com的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python中pygame模块用法实例
Oct 09 Python
tensorflow: variable的值与variable.read_value()的值区别详解
Jul 30 Python
Python从Excel中读取日期一列的方法
Nov 28 Python
Django model反向关联名称的方法
Dec 15 Python
Python基于BeautifulSoup和requests实现的爬虫功能示例
Aug 02 Python
详解django实现自定义manage命令的扩展
Aug 13 Python
解决Django连接db遇到的问题
Aug 29 Python
Python模块future用法原理详解
Jan 20 Python
Python实例教程之检索输出月份日历表
Dec 16 Python
selenium自动化测试入门实战
Dec 21 Python
浅析Python打包时包含静态文件处理方法
Jan 15 Python
python SOCKET编程基础入门
Feb 27 Python
django之使用celery-把耗时程序放到celery里面执行的方法
Jul 12 #Python
Python3环境安装Scrapy爬虫框架过程及常见错误
Jul 12 #Python
Django中celery执行任务结果的保存方法
Jul 12 #Python
python hough变换检测直线的实现方法
Jul 12 #Python
Python实现的远程文件自动打包并下载功能示例
Jul 12 #Python
完美解决python3.7 pip升级 拒绝访问问题
Jul 12 #Python
在交互式环境中执行Python程序过程详解
Jul 12 #Python
You might like
php模拟js函数unescape的函数代码
2012/10/20 PHP
js中函数调用的两种常用方法使用介绍
2014/07/17 Javascript
HTML页面,测试JS对C函数的调用简单实例
2016/08/09 Javascript
20行JS代码实现网页刮刮乐效果
2017/06/23 Javascript
vue2.0 自定义组件的方法(vue组件的封装)
2018/06/05 Javascript
vue移动端轻量级的轮播组件实现代码
2018/07/12 Javascript
通过说明与示例了解js五种设计模式
2019/06/17 Javascript
vue仿ios列表左划删除
2019/09/26 Javascript
electron 安装,调试,打包的具体使用
2019/11/06 Javascript
Taro UI框架开发小程序实现左滑喜欢右滑不喜欢效果的示例代码
2020/05/18 Javascript
可拖拽组件slider.js使用方法详解
2020/12/04 Javascript
[48:20]OpTic vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python实现将DOC文档转换为PDF的方法
2015/07/25 Python
python自带的http模块详解
2016/11/06 Python
python matplotlib坐标轴设置的方法
2017/12/05 Python
用python写扫雷游戏实例代码分享
2018/05/27 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/26 Python
解决安装python库时windows error5 报错的问题
2018/10/21 Python
Django实现学生管理系统
2019/02/26 Python
Python生成一个迭代器的实操方法
2019/06/18 Python
Django后台admin的使用详解
2019/07/08 Python
Django文件存储 自己定制存储系统解析
2019/08/02 Python
python实现超市管理系统(后台管理)
2019/10/25 Python
基于tensorflow指定GPU运行及GPU资源分配的几种方式小结
2020/02/03 Python
如何使用Python抓取网页tag操作
2020/02/14 Python
css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单
2014/09/02 HTML / CSS
Tory Burch英国官方网站:美国时尚生活品牌
2017/12/06 全球购物
美国婴童服装市场上的领先品牌:Carter’s
2018/02/08 全球购物
英国街头品牌:Bee Inspired Clothing
2018/02/12 全球购物
化验室技术员岗位职责
2013/12/24 职场文书
大学生的网络创业计划书
2013/12/26 职场文书
评析教师个人的自我评价
2014/02/19 职场文书
英语教育专业毕业生求职信
2014/08/28 职场文书
公司聚餐通知
2015/04/22 职场文书
小学大队干部竞选稿
2015/11/20 职场文书
建房合同协议书
2016/03/21 职场文书