Python3使用requests发闪存的方法

yipeiwu_com5年前Python基础

requests是一个python 轻量的http客户端库,相比python的标准库要优雅很多。接下来通过本文给大家介绍Python3使用requests发闪存的方法,一起学习吧。

使用以下命令安装requests

复制代码 代码如下:

pip install requests

抓包工具中看到的http头和cookies会多很多项,其中一些是可以省略掉的。比如我省略掉了Content-Length。

import requests
url='http://ing.cnblogs.com/ajax/ing/Publish'
head={'Accept':'application/json, text/javascript, */*; q=0.01',
'Origin':'http://ing.cnblogs.com',
'X-Requested-With':'XMLHttpRequest',
'Content-Type':'application/json; charset=UTF-8',
'DNT':1,
'Referer':'http://ing.cnblogs.com/',
'Accept-Encoding':'gzip, deflate',
'Accept-Language':'zh-CN,zh;q=0.8,en;q=0.6',
}
#session 通过抓包工具,或者cookies工具可以得到.
cookies={'.CNBlogsCookie':'67834BD16E61A87726AF2203F849339E8DEFF67BC4A453FDG830AC373CAC83BAAF2312B975279092095A0E143400E82BBEE189BD5CB8826CA6A6E836F69EC5783C410C2B815A833D5816CEB5B457B159A38F'}#←_←填你自己的session
data={"content":"[天上的星星不说话]python大法好{}","publicFlag":1}
s=requests.Session()
for r in range(1,122):
data['content']="[天上的星星不说话]python大法好{}".format(r)
post=s.post(url,data,cookies=cookies)
print(post.text)

以下代码用于删除闪存

import requests
import re
def timeit(fn):
import time
def v():
start=time.clock()
fn()
end=time.clock()-start
print(fn.__name__,"运行耗时:",end)
return v
url='http://ing.cnblogs.com/ajax/ing/GetIngList?IngListType=my&PageIndex=1&PageSize=30'
head={'Accept':'application/json, text/javascript, */*; q=0.01',
'Origin':'http://ing.cnblogs.com',
'X-Requested-With':'XMLHttpRequest',
'Content-Type':'application/json; charset=UTF-8',
'DNT':1,
'Referer':'http://ing.cnblogs.com/mobile/',
'Accept-Encoding':'gzip, deflate',
'Accept-Language':'zh-CN,zh;q=0.8,en;q=0.6',
}
cookies={'.CNBlogsCookie':'989A8F9SF9SF989S982938492849823498239489284989SDF89S89F8E98F9S88E9R89WER898R989R23423J4K2529R8FS7R2K48978S7DF8'}
s=requests.Session()
@timeit
def geting():
data={'ingId':'878581'}
r=s.get(url,cookies=cookies)
text=r.text
ingid=re.findall('''feed_content_(\d+)(.+?天上的星星不说话.+?DelIng)''',text,re.DOTALL)
#ingid=re.findall('''feed_content_(\d+)''',text)
#print(ingid) 
notlucky=[a for a,b in ingid if 'ing_icon_lucky' not in b]
for x in notlucky:
data['ingId']=x
try:
sdel=s.post("http://ing.cnblogs.com/ajax/ing/del",cookies=cookies,data=data)
print(sdel.text)
except:
pass
for xxx in range(18):
geting()

相关文章

pandas 透视表中文字段排序方法

前几天有一个需求,透视表中的年级这一列要按照一年级,二年级这样的序列进行排序,但是用过透视表的人都知道,透视表对中文的排序不是太理想,放弃pandas自带的排序方法。测试了很久,想到一个...

python3实现小球转动抽奖小游戏

python3实现小球转动抽奖小游戏

最近老师在讲 tkinter,所以我做了一个抽奖小游戏。 一、效果图 先上效果图。红色的小球会围绕蓝色小球做环形运动。我设置的四个角是奖品,其余的都是再接再厉。 二、方法 基于tkin...

浅析Python中的getattr(),setattr(),delattr(),hasattr()

getattr()函数是Python自省的核心函数,具体使用大体如下: 获取对象引用getattr Getattr用于返回一个对象属性,或者方法 class A: def __i...

详解Django解决ajax跨域访问问题

详解Django解决ajax跨域访问问题

这篇文章主要给大家介绍了关于Django跨域请求问题解决的相关资料,文中介绍的实现方法包括:使用django-cors-headers全局控制、使用JsonP,只能用于Get方法以及在v...

Tensorflow 训练自己的数据集将数据直接导入到内存

Tensorflow 训练自己的数据集将数据直接导入到内存

制作自己的训练集 下图是我们数据的存放格式,在data目录下有验证集与测试集分别对应iris_test, iris_train 为了向伟大的MNIST致敬,我们采用的数据名称格式和...