five羊 2023-08-30 22:38 采纳率: 100%
浏览 20
已结题

Python爬取微博话题博文,保存为TXT格式

利用Python,爬取微博上有关某个话题的博文,例如#凉拌黄瓜#,最后将每一条博文内容的结果单独保存为一个txt格式。

回答之前请确保能跑起来,不要给我gpt写的死代码。

  • 写回答

4条回答 默认 最新

  • 一位热心程序猿 2023-08-31 11:32
    关注

    来了

    img

    from selenium import webdriver
    import time
    import os
    
    # 初始化 Chrome 浏览器
    driver = webdriver.Chrome()
    
    # 打开微博页面,此处以某个话题页为例
    weibo_url = "https://s.weibo.com/weibo?q=%2305%E5%90%8E%E5%B7%B2%E7%BB%8F%E8%BF%9B%E5%8C%96%E5%88%B0%E8%BF%99%E7%A7%8D%E7%A8%8B%E5%BA%A6%E4%BA%86%E5%90%97%23"
    driver.get(weibo_url)
    
    # 等待页面加载完成
    time.sleep(5)
    
    # 解析页面内容
    page_source = driver.page_source
    
    # 使用 Beautiful Soup 解析页面内容
    from bs4 import BeautifulSoup
    soup = BeautifulSoup(page_source, "html.parser")
    
    # 查找博文内容
    posts = soup.find_all("p", class_="txt")
    
    # 设置保存目录
    save_dir = "/Users/xx/Downloads/weibo_results/"
    
    # 创建保存目录
    if not os.path.exists(save_dir):
        os.makedirs(save_dir)
    
    # 逐条保存博文内容为 txt 文件
    for i, post in enumerate(posts):
        post_text = post.get_text(strip=True)
        file_path = os.path.join(save_dir, f"weibo_{i + 1}.txt")
    
        with open(file_path, "w", encoding="utf-8") as file:
            file.write(post_text)
    
        print(f"保存第{i + 1}条微博至 {file_path}")
    
    # 关闭浏览器
    driver.quit()
    
    print("爬取和保存完成!")
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 9月8日
  • 已采纳回答 8月31日
  • 赞助了问题酬金15元 8月31日
  • 创建了问题 8月30日

悬赏问题

  • ¥15 CSS通配符清除内外边距为什么可以覆盖默认样式?
  • ¥15 SPSS分类模型实训题步骤
  • ¥15 求解决扩散模型代码问题
  • ¥15 工创大赛太阳能电动车项目零基础要学什么
  • ¥20 limma多组间分析最终p值只有一个
  • ¥15 nopCommerce开发问题
  • ¥15 torch.multiprocessing.spawn.ProcessExitedException: process 1 terminated with signal SIGKILL
  • ¥15 QuartusⅡ15.0编译项目后,output_files中的.jdi、.sld、.sof不更新怎么解决
  • ¥15 pycharm输出和导师的一样,但是标红
  • ¥15 想问问富文本拿到的html怎么转成docx的