最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

分享一個常用的Python模擬登陸類

 更新時間:2015年03月29日 11:25:01   作者:Cosven  
這篇文章主要分享的是一個常用的Python模擬登陸類,而且可以支持cookie保存,十分的實用,這里推薦給大家,有需要的小伙伴可以參考下。

代碼非常簡單,而且注釋也很詳細,這里就不多廢話了

tools.py

# -*- coding:utf8 -*-
'''
# =============================================================================
#   FileName: tools.py
#     Desc: 模擬瀏覽器
#    Author: cosven
#     Email: yinshaowen241@gmail.com
#   HomePage: www.cosven.com
#    Version: 0.0.1
#  LastChange: 2015-03-27 00:59:24
#    History:
# =============================================================================
'''
 
 
import urllib
import urllib2
import cookielib
 
 
class MyWeb():
  """
    模擬一個瀏覽器
  """
  def __init__(self):
    self.header = {
      'Host': 'music.163.com',
      'Content-Type': "application/x-www-form-urlencoded; charset=UTF-8",
      'Referer': 'http://music.163.com/song?id=26599525',
      "User-Agent": "Opera/8.0 (Macintosh; PPC Mac OS X; U; en)"
    }
    self.cookie = cookielib.LWPCookieJar()
    self.cookie_support = urllib2.HTTPCookieProcessor(self.cookie)
    self.opener = urllib2.build_opener(self.cookie_support,
                      urllib2.HTTPHandler)
    urllib2.install_opener(self.opener)
 
  def post(self, posturl, dictdata):
    """
    模擬post請求
 
    :param string posturl: url地址
    :param dict dictdata: 發(fā)送的數(shù)據(jù)
    """
 
    postdata = urllib.urlencode(dictdata)
    request = urllib2.Request(posturl, postdata, self.header)
    try:
      content = urllib2.urlopen(request)
      return content
    except Exception, e:
      print ("post:" + str(e))
      return None
 
  def get(self, url):
    """
    模擬get請求
 
    :param url: url地址
    :return content: 常使用read的方法來讀取返回數(shù)據(jù)
    :rtype : instance or None
    """
    request = urllib2.Request(url, None, self.header)
    try:
      content = urllib2.urlopen(request)
      return content
    except Exception, e:
      print ("open:" + str(e))
      return None
 
 
if __name__ == "__main__":
  import hashlib
  web = MyWeb()
  url = 'http://music.163.com/api/login/'
  data = {
    'username': 'username', # email
    'password': hashlib.md5('password').hexdigest(), # password
    'rememberLogin': 'true'
  }
  res = web.post(url, data)
  print res.read()
  # url_add = 'http://music.163.com/api/playlist/manipulate/tracks'
  # data_add = {
  #   'tracks': '26599525', # music id
  #   'pid': '16199365',  # playlist id
  #   'trackIds': '["26599525"]', # music id str
  #   'op': 'add'  # opation
  # }
  # res_add = web.post(url_add, data_add)
  # print res_add.read()
 
  # 完了可以試著查看自己網(wǎng)易云音樂相應列表歌曲

以上就是本文給大家分享的代碼了,希望大家能夠喜歡,也希望能夠?qū)Υ蠹覍W習Python有所幫助。

相關(guān)文章

  • 一文詳解pygame.sprite的精靈碰撞

    一文詳解pygame.sprite的精靈碰撞

    精靈其實在一個游戲程序中,精靈本質(zhì)指的是一張張小尺寸的圖片,比如游戲中的各種道具、人物、場景裝飾等,它們都可以看做成一張張小的“精靈”圖,下面這篇文章主要給大家介紹了關(guān)于pygame.sprite精靈碰撞的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • Python用zip函數(shù)同時遍歷多個迭代器示例詳解

    Python用zip函數(shù)同時遍歷多個迭代器示例詳解

    這篇文章主要給大家進行介紹了Python如何用zip函數(shù)同時遍歷多個迭代器,文中給出了示例以及原理和注意事項,相信會對大家的理解和學習很有幫助,有需要的朋友們下面來一起學習學習吧。
    2016-11-11
  • python生成器用法實例詳解

    python生成器用法實例詳解

    這篇文章主要介紹了python生成器用法,結(jié)合實例形式詳細分析了Python生成器相關(guān)原理、創(chuàng)建、使用方法及操作注意事項,需要的朋友可以參考下
    2019-11-11
  • python sitk.show()與imageJ結(jié)合使用常見的問題

    python sitk.show()與imageJ結(jié)合使用常見的問題

    這篇文章主要介紹了python sitk.show()與imageJ結(jié)合使用常見的問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • Python調(diào)用微信公眾平臺接口操作示例

    Python調(diào)用微信公眾平臺接口操作示例

    這篇文章主要介紹了Python調(diào)用微信公眾平臺接口操作,結(jié)合具體實例形式分析了Python針對微信接口數(shù)據(jù)傳輸?shù)南嚓P(guān)操作技巧,需要的朋友可以參考下
    2017-07-07
  • 使用Python代碼實現(xiàn)對Excel單元格的鎖定

    使用Python代碼實現(xiàn)對Excel單元格的鎖定

    在Excel表格中,我們可以通過鎖定特定的單元格或區(qū)域,防止對單元格內(nèi)容進行隨意修改,確保關(guān)鍵數(shù)據(jù)、公式或格式不被誤改,本文將介紹如何使用Python代碼來實現(xiàn)對Excel單元格的鎖定,實現(xiàn)批量操作以及自動化,需要的朋友可以參考下
    2024-06-06
  • ansible動態(tài)Inventory主機清單配置遇到的坑

    ansible動態(tài)Inventory主機清單配置遇到的坑

    這篇文章主要介紹了ansible動態(tài)Inventory主機清單配置遇到的坑,需要的朋友可以參考下
    2020-01-01
  • Django Channel實時推送與聊天的示例代碼

    Django Channel實時推送與聊天的示例代碼

    這篇文章主要介紹了Django Channel實時推送與聊天的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • Python游戲開發(fā)之魔塔小游戲的實現(xiàn)

    Python游戲開發(fā)之魔塔小游戲的實現(xiàn)

    魔塔小游戲作為一款角色扮演RPG小游戲,一直深受大家的喜愛。本文將利用Python的cpgames模塊制作這一經(jīng)典小游戲,感興趣的可以跟隨小編一起動手試一試
    2022-02-02
  • PyQt5?python?數(shù)據(jù)庫?表格動態(tài)增刪改詳情

    PyQt5?python?數(shù)據(jù)庫?表格動態(tài)增刪改詳情

    這篇文章主要介紹了PyQt5?python?數(shù)據(jù)庫?表格動態(tài)增刪改詳情,首先手動連接數(shù)據(jù)庫與下一個的程序連接數(shù)據(jù)庫是獨立的2個部分,下面來看看文章的詳細介紹
    2022-01-01

最新評論

义乌市| 祁东县| 吉安县| 洱源县| 迁西县| 德令哈市| 定结县| 墨脱县| 通江县| 长垣县| 景德镇市| 肇州县| 焉耆| 秭归县| 乐清市| 宁德市| 呼图壁县| 子洲县| 舞钢市| 中阳县| 峨眉山市| 兴化市| 武威市| 汝南县| 尉犁县| 丹江口市| 张北县| 武功县| 休宁县| 宜君县| 临汾市| 柘城县| 天水市| 武义县| 洪湖市| 靖州| 开化县| 新野县| 清镇市| 温泉县| 灵丘县|