zoukankan      html  css  js  c++  java
  • python3使用requests发闪存

    闪存ing.cnblogs.com是博客园类似推特、饭否的服务,
    我写了以下程序可以完成发闪存的操作,目的是顺便练习使用requests库。

    requests是一个python 轻量的http客户端库,与比python的标准库优雅很多。

    使用以下命令安装requests

    pip install requests

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

    """
    python3使用requests发闪存.py
    2016年5月9日 12:50:40 codegay
    
    参考资料requests文档:
    http://cn.python-requests.org/zh_CN/latest/
    """
    
    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)
        
    
    

    以下代码用于删除闪存

    """
    python3使用requests删除闪存.py
    2016年5月9日 22:27:30 codegay
    
    闪存ing.cnblogs.com是一个类似饭否的功能
    本程序功能是删除非幸运闪的闪存
    
    参考资料requests文档:
    http://cn.python-requests.org/zh_CN/latest/
    """
    
    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()
    
    
  • 相关阅读:
    Vue数组循环
    vue使用swiper6分页器踩坑
    Vue基础语法(四)
    Vue安装jquery
    Vue基础语法(三)
    Too Rich(贪心加搜索)
    ZOJ Anagrams by Stack(堆栈中的搜索)
    最长子序列和(分治法实现)
    幸运数字(数位dp)
    蜥蜴和地下室(深搜)
  • 原文地址:https://www.cnblogs.com/gayhub/p/pythoning.html
Copyright © 2011-2022 走看看