卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章64334本站已运行4115

Python爬取阿里云盘资源

import requests
import re
  
  
class alipanso(object):
    def __init__(self, url, headers, params):
        self.url = url
        self.headers = headers
        self.params = params
          
    def get_html(self):
        response_html = requests.get(self.url, headers=self.headers,params=self.params)
        return response_html.content.decode()
      
    def parse_response_html(self):
        response_data = self.get_html()
        url_name = re.findall('W*?(.*)W*', response_data)
        name_download_url = []
        n = 1
        for i in url_name:
            download_url = 'https://www.alipanso.com/' + i[0]
            name = i[1]
            name_download_url.append(f'{n}.' + name + '  ' + download_url)
            n += 1
        return name_download_url
      
if __name__ == '__main__':
      
    word = input('请输入要搜索的资源名称:')
    choose = '1.全部文件n''2.视频n' '3.图片n''4.文档n''5.音频n''6.压缩文件n''7.其他'
      
    print('请选择文件类型:')
      
    print(choose)
      
    num = input('请选择选项前的序号:')
      
    format = {
        '1': 'all',
        '2': 'video',
        '3': 'image',
        '4': 'doc',
        '5': 'audio',
        '6': 'zip',
        '7': 'others'
    }
      
    url = 'https://www.alipanso.com/search.html?'
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.54 Safari/537.36'
    }
      
    for i in range(1, 10):
        params = {
            'page': f'{i}',
            'keyword': word,
            'search_folder_or_file': '0',
            'is_search_folder_content': '0',
            'is_search_path_title': '0',
            'category': format[num],
            'file_extension': 'all',
            'search_model': '2'
        }
        sosuo = alipanso(url, headers=headers, params=params)
        print(f'第{i}页内容:')
        ziyuan = sosuo.parse_response_html()
        print(ziyuan)
        if not ziyuan:
            break

相关专题

卓越飞翔博客
上一篇: @keyframes实现CSS动画帧效果
下一篇: {dede:arclist keyword='动态获取关键词'}bug修复
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏