python模拟艺龙网登录requests包
对比urllib、urllib2与requests不难发现,前者功能更强大,但是实现一个功能要写很多的代码,后者,requests代码简洁,用起来更快速
下面一个模拟登录的代码:看看吧一共也没有几行就实现了。
#-*- coding:utf-8 -*- from requests import Request,Session
import json
s =Session()
codeurl = 'https://secure.elong.com/passport/getValidateCode'
loginurl='https://secure.elong.com/passport/ajax/elongLogin' code = s.get(codeurl)//这句不加会提示验证码错误
#print code.content
postData = {'userName':'',
'passwd':'yhlexx8701xx',
'validateCode':'',
'rememberMe':'false'}
reponse = s.post(loginurl,data=postData)
print reponse.text
#如果需要取结果中的值做登录后的后续操作,可以使用json方式,很方便
esid = json.loads(reponse.text)["esid"]
print esid
c ='http://my.elong.net/Connection_en.html?SessionTag='+esid+'nextUrl=http%3A%2F%2Fmy.elong.com%2FCashCoupon_cn.html&expireTime=0'
r = s.get(c)
print r.content


登录是成功的,但是从返回的结果中可以看出,本次登录不需要验证码输入。
有一些网站,只要不输入密码错误,是不是需要输入验证码的。
猜测这个是在session中做的记录,这里呢每次执行重新创建session,即使密码错误也不会提示输入验证码。竞然把验证码避过了。
我也不是很明白,有懂的同学,给回复下。学习一下,谢谢!
python模拟艺龙网登录requests包的更多相关文章
- python模拟艺龙网登录带验证码输入
1.使用urllib与urllib2包 2.使用cookielib自动管理cookie 3.360浏览器F12抓信息 登录请求地址和验证码地址都拿到了如图 # -*- coding: utf-8 -* ...
- 利用Python模拟GitHub登录
最近学习了Fiddler抓包工具的简单使用,通过抓包,我们可以抓取到HTTP请求,并对其进行分析.现在我准备尝试着结合Python来模拟GitHub登录. Fiddler抓包分析 首先,我们想要模拟一 ...
- 定向爬虫 - Python模拟新浪微博登录
当我们试图从新浪微博抓取数据时,我们会发现网页上提示未登录,无法查看其他用户的信息. 模拟登录是定向爬虫制作中一个必须克服的问题,只有这样才能爬取到更多的内容. 实现微博登录的方法有很多,一般我们在模 ...
- python 模拟豆瓣登录(豆瓣6.0)
最近在学习python爬虫,看到网上有很多关于模拟豆瓣登录的例子,随意找了一个试了下,发现不能运行,对比了一下代码和豆瓣网站,发现原来是豆瓣网站做了修改,增加了反爬措施. 首先看下要模拟登录的网站: ...
- Python模拟接口登录
参考地址:https://blog.csdn.net/rifengxxc/article/details/77414090 下面讲下关于python模拟登录实验,之前怎么调试也不行,我也是摸索了好久, ...
- Python模拟校园网登录
最近忙着实验室的项目,学习的时间相对较少.前一段时间刚开始接触python时,依葫芦画瓢照着写了一个爬虫,爬取了某个网站的图片.当看到一张张图片自动出现在电脑屏幕上时,有些小小成就感.我想大多数人开始 ...
- python模拟自动登录网站(urllib2)
不登录打开网页: import urllib2 request = urllib2.Request('http://www.baidu.com') response = urllib2.urlopen ...
- 三十一、python中urllib和requests包详解
A.urllibimport urllibimport urllib.requestimport json '''1.loads,dumpsjson.loads():将字符串转化成python的基础数 ...
- Python模拟用户登录场景
简单模拟登录场景,将已知的用户名及密码固化,通过用户输入内容和已固化的内容比较进行判断用户名和密码是否输入正确. 在用户输入时,将密码隐藏需要导入模块getpass import getpass _u ...
随机推荐
- A股行情记录
14年:券商 + 高铁 15年:大牛 16年:钢铁,煤炭(去产能) 17年:消费,大白马(去杠杆) 18年:科技股,垃圾股(股权质押),科创板 19年:券商 + 大金融 + 科技股 ?
- [No000018C]Vim清除上次的搜索高亮结果-Vim使用技巧(1)
在打开文件中使用Vim搜索功能并开启高亮显示后怎么取消当前高亮显示的目标词? 最简单的方法是再使用Vim搜索一串文档中不存在的目标词来覆盖当前高亮的搜索结果. 其实,可以在Vim尾行模式下使用 :no ...
- centos 安装docker-compose
#查看docker compose版本 docker-compose version #查看pip版本 pip -v #上一条语句没有显示版本信息则运行下面语句安装 python-pip yum -y ...
- 【每日一题】 uva-232 模拟+输出要求很严格
https://cn.vjudge.net/problem/UVA-232 uva的题,结尾不能多\n,空格什么的 反正就是个中型模拟,题目多读就行 #define _CRT_SECURE_NO_WA ...
- rman checksyntax和解决RMAN-01009: syntax error: found "dot"
在日常清归档时候执行脚本报错 RMAN-00552: syntax error in command line argumentsRMAN-01009: syntax error: found &qu ...
- LeetCode 876 Middle of the Linked List 解题报告
题目要求 Given a non-empty, singly linked list with head node head, return a middle node of linked list. ...
- js中值的基本类型与引用类型,以及对象引用,对象的浅拷贝与深拷贝
js有两种类型的值:栈:原始数据类型(undefinen,null,boolead,number,string)堆:引用数据类型(对象,函数和数组)两种类型的区别是:储存位置不同,原始数据类型直接存储 ...
- SQL Server 无法连接数据库
1.打开SQL server 配置管理器-->SQL server 网络配置-->实例名的协议 2.保证SQLEXPRESS协议中的Named Pipes和 TCP/IP启用. 3.点击S ...
- Redis 安装、配置、集群
1. Redis的安装 1.1. Redis的安装 Redis是c语言开发的. 安装redis需要c语言的编译环境.如果没有gcc需要在线安装.yum install gcc-c++ 安装步骤: ...
- fdisk vs df
fdisk工具是分区工具:df是用来查看文件系统(分区)的使用情况的! 当用来查看分区信息时,较为相似: fdisk侧重于显示分区表的信息: df侧重于显示当前系统中所有文件系统的信息: 常用用法: ...