python 爬关键词,Python爬虫实战:爬取微博热搜关键词
一、爬取微博熱搜關鍵詞需要的第三方庫
1、requests
2、BeautifulSoup 美味湯
3、worldcloud 詞云
4、jieba 中文分詞
5、matplotlib 繪圖
二、爬取微博熱搜關鍵詞代碼示例import?requests
import?wordcloud
import?jieba
from?bs4?import?BeautifulSoup
from?matplotlib?import?pyplot?as?plt
from?pylab?import?mpl
#設置字體
mpl.rcParams['font.sans-serif']?=?['SimHei']
mpl.rcParams['axes.unicode_minus']?=?False
url?=?'https://s.weibo.com/top/summary?Refer=top_hot&topnav=1&wvr=6'
try:
#獲取數據
r?=?requests.get(url)
r.raise_for_status()
r.encoding?=?r.apparent_encoding
soup?=?BeautifulSoup(r.text,'html.parser')
data?=?soup.find_all('a')
d_list?=?[]
for?item?in?data:
d_list.append(item.text)
words?=?d_list[4:-11:]
#中文分詞
result?=?list(jieba.cut(words[0]))
for?word?in?words[1::]:
result.extend(jieba.cut(word))
redata?=?[]
for?it?in?result:
if?len(it)?<=?1:
continue
else:
redata.append(it)
result_str?=?'?'.join(redata)
#輸出詞云圖
font?=?r'C:\Windows\Fonts\simhei.ttf'
w?=?wordcloud.WordCloud(font_path=font,width=600,height=400)
w.generate(result_str)
w.to_file('微博熱搜關鍵詞詞云.png')
key?=?list(set(redata))
x,y?=?[],[]
#篩選數據
for?st?in?key:
count?=?redata.count(st)
if?count?<=?1:
continue
else:
x.append(st)
y.append(count)
x.sort()
y.sort()
#繪制結果圖
plt.plot(x,y)
plt.show()
except?Exception?as?e:
print(e)
以上就是Python爬蟲爬取微博熱搜關鍵詞的代碼示例,大家可以套入代碼直接使用哦~更多python爬蟲推薦:python爬蟲教程。
總結
以上是生活随笔為你收集整理的python 爬关键词,Python爬虫实战:爬取微博热搜关键词的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vb.net2019- 机器学习ml.n
- 下一篇: tensorflow随笔-不动点迭代求一