requests是一个python 轻量的http客户端库,相比python的标准库要优雅很多。接下来通过本文给大家介绍Python3使用requests发闪存的方法,一起学习吧。
使用以下命令安装requests
pip install requests
抓包工具中看到的http头和cookies会多很多项,其中一些是可以省略掉的。比如我省略掉了Content-Length。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
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) |
以下代码用于删除闪存
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
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() |