Python 3はrequestsのフラッシュメモリを使う方法です。
requestsはpythonの軽いhttpクライアントライブラリで、pythonの標準ライブラリよりずっと優雅です。ここでは、Pythone 3でrequestsを使ったフラッシュメモリの使い方を紹介します。一緒に勉強しましょう。
以下のコマンドでrequestsをインストールします。
以下のコマンドでrequestsをインストールします。
pip install requests
グリップツールで見たhttpヘッドとcookiesは多くの項目があります。中には省略できます。例えば、Conteet-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()