| 
 | 
 
 
 楼主 |
发表于 2020-10-12 02:34:18
|
显示全部楼层
 
 
 
 
谢谢!通过你这个网址我写出来了,中途因为没写cookie被新浪卡了3个小时  
- from urllib.request import Request, urlopen
 
 - from fake_useragent import UserAgent
 
 - import requests
 
 - from urllib.parse import urlencode
 
 - import json
 
  
- def get_res(url):
 
 -     #url = 'https://www.weibo.com/ajax/friendships/friends?page=1&uid=5715470927'
 
  
-     headers = {
 
 -         'User-Agent':UserAgent().chrome,
 
 -         'Cookie':'SINAGLOBAL=2809735293383.7993.1584504483612; _s_tentry=-; Apache=6590299036100.631.1602408891862; ULV=1602408892284:5:1:1:6590299036100.631.1602408891862:1598306540800; un=18593193392; UOR=,,login.sina.com.cn; login_sid_t=3debbfe8ff2ffe4cb10d7dde5d215edb; cross_origin_proto=SSL; ALF=1633959683; SSOLoginState=1602423684; SCF=Av_D3h0SAn4M4dDvE11TJXoQFM3irgDs2FVu2udrE-s8uhlNeVAf_IkPHz2X_Id6dBjAwv5Fhyav-OWt4DcWdmQ.; SUB=_2A25yh3vVDeRhGeFN6lUU8SbKyDmIHXVR9eodrDV8PUNbmtAKLRHFkW9NQHRX7Hg8sFQ4-U_aiRRwtDREDTH0chCt; SUBP=0033WrSXqPxfM725Ws9jqgMF55529P9D9WWbEK6NwBhzUaJ9YLxuoqUz5JpX5KzhUgL.FoM0eKMfeKnce0-2dJLoIEBLxKnL1h5L1h2LxKBLBonL1-eLxKnLBK-LB.qLxK-L1KeL1Kzt; SUHB=09P9wfR2GiQh3v; wvr=6; XSRF-TOKEN=hoHjMief6hcEGVgqALnncHJf; WBPSESS=Z6ejeHjAsRNOBei-TAIcJwO6JUmrCOPlIXNnyDYgWSpdLL2GYqyBLhZHLnGgWxjTGdgKi0O7E2XWyERbot0iMyppvEqNwFXWAXoIcy43Lf_rLzz8OYiN6nr5DddwMF-9; webim_unReadCount=%7B%22time%22%3A1602436950706%2C%22dm_pub_total%22%3A2%2C%22chat_group_client%22%3A0%2C%22chat_group_notice%22%3A0%2C%22allcountNum%22%3A39%2C%22msgbox%22%3A0%7D'
 
 -     }
 
 -     response = requests.get(url, headers=headers)
 
 -     return response
 
  
- def get_users(response,page):
 
 -     info = response.content.decode('utf-8','ignore')
 
 -     follow_json = json.loads(info)
 
 -     print('ok')
 
 -     users = follow_json['users']
 
 -     return users
 
  
 
- def main():
 
 -     content = input('请输入要用户的uid:')
 
 -     num = input('请输入要下载的页数:')
 
 -     base_url = 'https://www.weibo.com/ajax/friendships/friends?{}'
 
 -     with open ('张艺兴微博关注列表试做型初号机.txt', 'w', encoding='utf-8') as f:
 
 -         for i in range(int(num)):
 
 -             page = i+1
 
 -             args = {
 
 -                 'page':page,
 
 -                 'uid':content
 
 -                 }
 
 -             args = urlencode(args)
 
 -             url = base_url.format(args)
 
 -             print(url)
 
 -             response = get_res(url)
 
 -             print('正在打印第%d页'%page)
 
 -             users = get_users(response,page)
 
 -             f.write('第%d页\n'%page)
 
 -             for each in users:
 
 -                 f.write('Name:'+each['name']+'\n')
 
 -                 f.write('Uid:'+each['idstr']+'\n')
 
 -                 f.write('Description:'+each['description']+'\n')
 
 -                 f.write('--------------------------------------\n\n')
 
  
- if __name__ == '__main__':
 
 -     main()
 
 
  复制代码 |   
 
 
 
 |