requests模拟登录

#coding:utf-8
#author:jwong

import requests
import urllib2
import re
from bs4 import BeautifulSoup as bs

def login():
	s = requests.Session()
	login_url = ‘http://192.168.21.122/dvwa/login.php‘
	content = s.get(login_url)
	pattern = re.compile("name=‘user_token‘ value=‘(.*?)‘")
	tokens = re.findall(pattern,content.text)
	token = tokens[0]

	data = {
			‘username‘:‘admin‘,
			‘password‘:‘password‘,
			‘Login‘:‘Login‘,
			‘user_token‘:token}
	headers = {‘User-Agent‘:‘Mozilla/5.0 (Windows NT 6.1; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0‘}
	res = s.post(login_url,data,headers=headers)
	re.compile(‘‘)

	spider(s)

def spider(s):

	url_open = ‘http://192.168.21.122/dvwa/index.php‘
	response = s.get(url_open)
	soup = bs(response.text)

	info = soup.find_all(‘a‘)
	print info
	exit()

if __name__ == ‘__main__‘:
	login()

  

时间: 2024-10-03 00:15:49

requests模拟登录的相关文章

Cookies 模拟登录

#coding=utf-8 import requests from lxml import etree from multiprocessing.dummy import Pool cook={"Cookie":"your cookies"} url ='http://weibo.cn/u/uid' #html=requests.get(url).content #print html html=requests.get(url,cookies=cook).con

【Python数据分析】Python模拟登录(一) requests.Session应用

最近由于某些原因,需要用到Python模拟登录网站,但是以前对这块并不了解,而且目标网站的登录方法较为复杂, 所以一下卡在这里了,于是我决定从简单的模拟开始,逐渐深入地研究下这块. 注:本文仅为交流学习所用. 登录特点:明文传输,有特殊标志数据 会话对象requests.Session能够跨请求地保持某些参数,比如cookies,即在同一个Session实例发出的所有请求都保持同一个cookies,而requests模块每次会自动处理cookies,这样就很方便地处理登录时的cookies问题.

Python结合NC.exe 实现模拟登录&批量填表

1.工作需求 有很多事项,每个事项分为:名称.种类.时间等,需要把每个事项逐个输入到网页中并提交. 如果用人肉操作的话,流程就是先登录到网站后台,点击“添加”——>输入各项内容——>点击“保存”.然后重复这个动作100遍.如图: 2.设想的解决办法 对手工“登录”.“添加”.“保存”的全过程进行抓包,获取整个流程提交的数据,然后将其POST到服务器. 3.具体操作 3.1 抓取并分析操作时的数据 使用Chrome浏览器,打开所需登录的页面:http://222.000.36.113/ ,并输入

Python模拟登录wap版百度贴吧+自动回贴

模拟登录的原理都差不多,大致都是这样: 打开首页获取相关cookie: 提交登陆表单(即用户名与密码): 确认是否登录成功: 如果想了解更具体的原理与相关知识,推荐到详解抓取网站,模拟登陆,抓取动态网页的原理和实现(Python,C#等).(不过这系列博文实在太绕太绕太绕,数十篇文章互相穿插让人头晕眼花,我前后断断续续历时几个月才搞懂并编码测试成功) 模拟登录的关键点有两个,一是使用抓包工具(如chrome开发者控制台)分析表单提交的真实链接与相关get/post参数,二是编写管理cookie的

在Python中用Request库模拟登录(二):博客园(简单加密,无验证码)

源代码分析 博客园的登录页面非常简单,查看网页源代码,可以发现两个输入框的id分别为input1.input2,复选框的id为remember_me,登录按钮的id为signin. 还有一段JavaScript代码,下面来简单分析一下. 先来看$(function(){});函数: 1 $(function () { 2 $('#signin').bind('click', function () { 3 signin_go(); 4 }).val('登 录'); 5 }); $(functio

python RSA加密解密及模拟登录cnblog

1.公开密钥加密 又称非对称加密,需要一对密钥,一个是私人密钥,另一个则是公开密钥.公钥加密的只能私钥解密,用于加密客户上传数据.私钥加密的数据,公钥可以解密,主要用于数字签名.详细介绍可参见维基百科. 2.RSA加密算法 RSA加密属于非对称加密.RSA算法基于一个十分简单的数论事实:将两个大质数相乘十分容易,但是想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥.维基百科中对RSA算法的安全性进行说明:RSA加密算法 "对极大整数做因式分解的难度决定了RSA算法的可靠性.换言

python爬虫:两种方法模拟登录博客园

第一方法用第三方库(requests):参考http://www.mamicode.com/info-detail-1839685.html 源代码分析 博客园的登录页面非常简单,查看网页源代码,可以发现两个输入框的id分别为input1.input2,复选框的id为remember_me,登录按钮的id为signin. 还有一段JavaScript代码,下面来简单分析一下. 先来看$(function(){});函数: 1 $(function () { 2 $('#signin').bind

模拟登录新浪微博(接上篇)

模拟登录新浪微博 模拟登录新浪微博 1. 新浪微博登录机制 输入用户名密码 发送给服务器 服务器验证成功 返回Cookies与正常页面 2. 分析需要提交的数据 Mobile(用户名) Password(密码) remember(是否保持登录) backURL(登录以后返回的地址) backTitle(登录以后返回的标题) tryCount(尝试次数) vk(一个简单的验证码) submit(登录) action(URL参数) Requests提交数据的时候关键代码如下: 1.data={"mo

测试开发Python培训:模拟登录新浪微博-技术篇

测试开发Python培训:模拟登录新浪微博-技术篇 一般一个初学者项目的起点就是登陆功能的自动化,而面临的项目不同实现的技术难度是不一样的,poptest在做测试开发培训中更加关注技术难点,掌握技术实现思路,提高动手能力.这里通过大家都能接触到的系统新浪微博,作为案例. 模拟登录功能比较简单,很多人在学习自动化的时候都会以登陆来作为自己的第一个学习案例,有点像开发语言中第一段代码都是helloworld!一样.登陆简单的模拟登录,直接发post请求就OK,很容易实现. 这里用新浪微博,就是技术实