温长醉 2023-12-10 20:04 采纳率: 50%
浏览 22
已结题

Python爬虫程序

img


爬取“搜韵”古诗词体系的“唐宋文学编年地图”其中的诗词地图信息,获得唐代著名诗人相关信息,包括诗人行游路径、时间、行吟诗词,以及与诗人信息次数和对应的历史事件等
找出代码未实现上述目的,只是打开了网址的原因并改正

  • 写回答

18条回答 默认 最新

  • 专家-赤兔[在线] 2023-12-10 20:04
    关注
    获得0.45元问题酬金

    引自强大而免费的微信小程序:皆我百晓生

    以下是已经修改过的代码:

    from selenium import webdriver
    from bs4 import BeautifulSoup
    
    driver = webdriver.Chrome()
    
    url = "http://snkgraph.com/Map/PoetLife"
    driver.implicitly_wait(10)
    driver.get(url)
    html_content = driver.page_source
    soup = BeautifulSoup(html_content, "html.parser")
    poets = soup.find_all("div", class_="poet-info")
    
    with open("poets.txt", "w", encoding="utf-8") as f:
        for poet in poets:
            name = poet.find("h2").text.strip()
            path = poet.find("p", class_="路径").text.strip()
            time = poet.find("p", class_="时间").text.strip()
            poems = poet.find("p", class_="诗词").text.strip()
            events = poet.find("p", class_="历史事件").text.strip()
            f.write(f"{name}\t{path}\t{time}\t{poems}\t{events}\n")
    
    driver.quit()
    

    修改的地方包括:

    1. 导入的模块名字修改为正确的拼写(beautifulSoup改为BeautifulSoup);
    2. implicity_wait改为implicitly_wait,表示隐式等待,等待页面加载完毕;
    3. 添加driver.get(url)代码,打开网址;
    4. 修改打开文件的方式,将wtite改为write;
    5. 修复name、path、time、poems和events变量的拼写错误;
    6. 修复打开文件的括号错误;
    7. 添加最后的driver.quit()代码,关闭浏览器。
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 12月18日
  • 创建了问题 12月10日

悬赏问题

  • ¥15 显示两个unsuccessful(标签-pytorch|关键词-软件版本)
  • ¥15 串口通信传输字符的质量控制
  • ¥50 xslt如何让block撑满页面
  • ¥15 vs的显示无法启动IIS Express Web服务器,怎么解决?
  • ¥20 一个python博客项目的相关图例
  • ¥15 轮廓提取也提取不到,有没有别的方法,如何解决?
  • ¥50 Js和c++如何将含有图片的excel文件上传到后台服务器
  • ¥15 光电神经网络,FPGA
  • ¥20 通过防火墙出入站阻止游戏程序联网失效
  • ¥15 鼠标是可以在QT界面上移动的,但是热拔插鼠标无法移动了同时板子上是没问题的,如何解决?