香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > python >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

分享一个常用的Python模拟登陆类


时间:2021-11-09 10:29 作者:admin


代码非常简单,而且注释也很详细,这里就不多废话了

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 urllibimport urllib2import 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: 发送的数据    """     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的方法来读取返回数据    :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()   # 完了可以试着查看自己网易云音乐相应列表歌曲

以上就是本文给大家分享的代码了,希望大家能够喜欢,也希望能够对大家学习python/' target='_blank'>python有所帮助。

(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)