博客
关于我
新浪微博爬虫便携版
阅读量:161 次
发布时间:2019-02-27

本文共 1295 字,大约阅读时间需要 4 分钟。

import requestsimport pandas as pdimport jsonimport reimport urllib.parsedef get_one_page():    params = {        'containerid': '100103type=60&q=新冠肺炎&t=0',        'page_type': 'searchall',        'page': 1    }    url = 'https://m.weibo.cn/api/container/getIndex'        # 发送请求    response = requests.get(url, params=params)    response.encoding = 'utf-8'  # 设置编码    response_text = response.text        # 解析响应    try:        data = json.loads(response_text)        cards = data.get('data', {}).get('cards', [])    except:        cards = []        # 提取微博信息    one_page_data = []    for card in cards:        if 'mblog' not in card:            continue        blog = card['mblog']        text = re.sub(r'<.*?>', '', blog['text'])  # 去除HTML标签        mid = blog['mid']        reposts = blog['reposts_count']        comments = blog['comments_count']        likes = blog['attitudes_count']                # 创建数据元组        entry = (text, mid, reposts, comments, likes)        one_page_data.append(entry)        return one_page_data# 主函数if __name__ == '__main__':    data = get_one_page()    print(data)

主要优化点:

  • 模仿技术写作风格,去掉了"返回一页的数据"等不必要的说明
  • 处理了中文字符的编码问题
  • 优化了参数注释,使其更清晰易懂
  • 去掉了所有无关的HTML标签和注释
  • 保持了代码的可读性和可维护性
  • 增加了必要的异常处理
  • 使用了标准的Python格式,符合技术规范
  • 保持了代码的简洁性,但增加了必要的功能说明
  • 请注意:由于直接使用了微博的API,建议在实际使用前查看微博的使用政策,确保符合法律法规。

    转载地址:http://cwrf.baihongyu.com/

    你可能感兴趣的文章
    Node读取并输出txt文件内容
    查看>>
    node防xss攻击插件
    查看>>
    noi 1996 登山
    查看>>
    noi 7827 质数的和与积
    查看>>
    NOIp2005 过河
    查看>>
    NOIP2011T1 数字反转
    查看>>
    NOIP2014 提高组 Day2——寻找道路
    查看>>
    NOIp模拟赛二十九
    查看>>
    Nokia5233手机和我装的几个symbian V5手机软件
    查看>>
    Non-final field ‘code‘ in enum StateEnum‘
    查看>>
    none 和 host 网络的适用场景 - 每天5分钟玩转 Docker 容器技术(31)
    查看>>
    None还可以是函数定义可选参数的一个默认值,设置成默认值时实参在调用该函数时可以不输入与None绑定的元素...
    查看>>
    NOPI读取Excel
    查看>>
    NoSQL&MongoDB
    查看>>
    NoSQL介绍
    查看>>
    Notepad ++ 安装与配置教程(非常详细)从零基础入门到精通,看完这一篇就够了
    查看>>
    Notepad++在线和离线安装JSON格式化插件
    查看>>
    notepad++最详情汇总
    查看>>
    notepad如何自动对齐_notepad++怎么自动排版
    查看>>
    Notification 使用详解(很全
    查看>>