利用python爬虫抓取虎扑PUBG论坛帖子并制作词云图

本文介绍了如何利用Python爬虫抓取虎扑PUBG论坛的帖子标题和部分回复,通过jieba分词和wordcloud制作词云图,分析论坛热门话题。爬虫构建中处理了网页编码问题,避免了请求错误。词云图制作时,使用自定义词典提高分词准确性,并对结果进行了展示。
摘要由CSDN通过智能技术生成

作为一个PUBG迷,刷论坛是每天必不可少的事,上面有很多技术贴和职业比赛的帖子,突发奇想,想知道论坛里谈论最多的是什么,便做了一个爬虫爬取了论坛上最新的帖子标题和部分回复,然后利用jieba与wordcloud进行分词然后做了一个词云图。

爬虫的构建与数据的爬取

首先导入制作爬虫需要的包:

from bs4 import BeautifulSoup
import requests
import pandas as pd
import chardet
import numpy as np

生成爬虫的函数:

'''
creat beautifulsoup
'''
def creat_bs(url):
    result = requests.get(url)
    e=chardet.detect(result.content)['encoding']
    #set the code of request object to the webpage's code
    result.encoding=e
    c = result.content
    soup=BeautifulSoup(c,'lxml')
    return soup

这里利用了chardet.detect自动检测所获取网页内容的编码并转化,防止request识别错误。

接着构建所要获取网页的集合函数:

'''
build urls group
'''
def build_urls(prefix,suffix):
    urls=[]
    for item in suffix:
        url=prefix+item
        urls.append(url)
    return urls

接下来便可以开始获取论坛帖子标题与帖子链接,首先观察一下PUBG论坛首页的html代码:
这里写图片描述
可以看到我们要爬取的帖子标题所在的<b></b>标签,但是html的常识告诉我,这个标签表示加粗,从左边的网页显示也可以看出字体被加粗了。我们再往下看:
这里写图片描述
没有加粗的标题并没有<b></b>标签。看清了网页的代码,便可以开始编写爬虫了:

'''
acquire all the page titles and links and save it
'''
def find_title_link
  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值