python爬虫爬取统计年鉴中某个词出现的次数

怎么利用Python在整个统计年鉴中爬取所需要的词语出现的次数啊


import requests
from bs4 import BeautifulSoup
from collections import Counter

url = '年鉴的地址'
response = requests.get(url)
html = response.content

soup = BeautifulSoup(html, 'html.parser')
text = soup.get_text()
words = text.split()
word_counts = Counter(words)

top_words = word_counts.most_common(10)
for word, count in top_words:
    print(word, count)

循环统计次数

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7676758
  • 这篇博客你也可以参考下:使用Python统计历年来各种英语高考题中单词的出现频数
  • 同时,你还可以查看手册:python- “已编译的” Python 文件 中的内容
  • 除此之外, 这篇博客: python爬虫实现对年级网站通知的自动化推送中的 函数库 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • import time
    import datetime
    import urllib.request
    import requests
    import json
    from bs4 import BeautifulSoup
    import smtplib
    from email import (header)
    from email.mime import (text, multipart)
    
  • 您还可以看一下 CSDN就业班老师的 Python全栈工程师特训班第十八期-直播回放 课程中的 Python全栈工程师特训班第十八期-开班典礼-03小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    首先,你需要使用requests库发送HTTP请求来获取统计年鉴的网页数据,并使用lxml库的xpath方法提取出特定词语出现的次数。

    1. 导入requests库和lxml库:
    import requests
    from lxml import etree
    
    1. 发送HTTP请求获取网页数据:
    url = "统计年鉴的网址"
    response = requests.get(url)
    html = response.text
    
    1. 使用lxml的etree方法解析网页数据:
    data = etree.HTML(html)
    
    1. 使用xpath方法提取特定词语出现的次数:
    keyword = "特定词语"
    count = len(data.xpath(f"//*[contains(text(), '{keyword}')]"))
    print(count)
    

    这样就可以得到特定词语在统计年鉴中出现的次数了。

    请注意,以上代码只是一个示例,具体的代码实现可能会受到网页结构和数据格式的影响,你需要根据实际情况进行调整和优化。另外,为了避免对网站造成压力过大,建议在爬取数据时遵守网站的爬虫规则,并添加适当的延时和异常处理机制。

问题点: 统计关键词的出现次数
分析:
①对一个全文本进行拆分,可以用jieba库,拆分成一个个关键词
②再使用collections库进行统计各个关键词的出现次数.

import jieba
from collections import Counter

text = "一段文字"
key_word_list = jieba.lcut(text)
# 返回一个字典 各个关键词出现次数 {"我":  99}  ‘我’ 出现了99次
word_counts_dict = Counter(key_word_list)