實(shí)驗(yàn)?1:爬取網(wǎng)頁(yè)中的數(shù)據(jù)。
要求:使用?urllib?庫(kù)和?requests?庫(kù)分別爬取?http://www.sohu.com?首頁(yè)的前?360?個(gè)字節(jié)的數(shù)據(jù)。
# 要求:使用 urllib 庫(kù)和 requests 庫(kù)分別爬取 http://www.sohu.com 首頁(yè)的前 360 個(gè)字節(jié)的數(shù)據(jù)。
import urllib.request
import requests
# 使用 urllib 庫(kù)爬取 http://www.sohu.com 首頁(yè)的前 360 個(gè)字節(jié)的數(shù)據(jù)。
url = 'http://www.sohu.com'
req = urllib.request.Request(url)
res = urllib.request.urlopen(req)
data = res.read(360)
print(data)
# 使用 requests 庫(kù)爬取 http://www.sohu.com 首頁(yè)的前 360 個(gè)字節(jié)的數(shù)據(jù)。
#url = 'http://www.sohu.com'
#res = requests.get(url)
#data = res.content[:360]
#print(data)
實(shí)驗(yàn)?2:測(cè)試?BeautifulSoup?對(duì)象的方法。
要求:
1)創(chuàng)建?BeautifulSoup?對(duì)象。
2)測(cè)試搜索文檔樹的?find_all()方法和?find()方法。
# 實(shí)驗(yàn) 2:測(cè)試 BeautifulSoup 對(duì)象的方法。
# 要求:
# 1)創(chuàng)建 BeautifulSoup 對(duì)象。
# 2)測(cè)試搜索文檔樹的 find_all()方法和 find()方法。
from bs4 import BeautifulSoup
import requests
# 過http請(qǐng)求加載網(wǎng)頁(yè)
response = requests.get("http://www.sohu.com")
# 創(chuàng)建BeautifulSoup對(duì)象
soup = BeautifulSoup(response.text, "html.parser")
# 搜索文檔樹的find_all()方法
print(soup.find_all("a"))
# 搜索文檔樹的find()方法
print(soup.find("a"))
?實(shí)驗(yàn)?3:爬取并分析網(wǎng)頁(yè)頁(yè)面數(shù)據(jù)。
?(1)使用requests庫(kù)爬取https://www.hnnu.edu.cn/main.htm首頁(yè)內(nèi)容。
(2)編寫程序獲取https://www.hnnu.edu.cn/119/list.htm的通知公告的信息。??
# 實(shí)驗(yàn) 3:爬取并分析網(wǎng)頁(yè)頁(yè)面數(shù)據(jù)。
# (1)使用requests庫(kù)爬取https://www.hnnu.edu.cn/main.htm首頁(yè)內(nèi)容。
# (2)編寫程序獲取https://www.hnnu.edu.cn/119/list.htm的通知公告的信息。
import requests
from bs4 import BeautifulSoup
url = 'https://www.hnnu.edu.cn/main.htm'
res = requests.get(url)
soup = BeautifulSoup(res.text,'html.parser')
print(soup.find_all('a'))
print(soup.find('a'))
for i in range(1,23,1):
url = 'https://www.hnnu.edu.cn/119/list.htm{}.htm'.format(i)
res = requests.get(url)
soup = BeautifulSoup(res.text,'html.parser')
print("-------------------------------------------------------")
print(soup)
#print(soup.find('a'))
實(shí)驗(yàn)四:爬取關(guān)鍵詞+制作詞云
# 爬取關(guān)鍵字
from typing import List, Any
import requests
from bs4 import BeautifulSoup
urls=[]
for i in range(1,23):
urls.append('https://www.hnnu.edu.cn/gyxy/list'+str(i)+'.htm')# 這里改地址
def getURL(url):
r=requests.get(url)
r.encoding='utf-8'
return r.text
def getSoup(url):
txt=getURL(url)
soup=BeautifulSoup(txt,'html.parser')
return soup
def getContent(soup):
content=soup.find('ul',{'class':'news_list list2'})# ul對(duì)應(yīng)的list
titles=[]
dates=[]
for item in content.find_all('li'):
# titles.append(item.a['title'])
date=item.find('span',{'class':'news_meta'})
# dates.append(date.string)
titles.append([date.string,item.a['title']])
return titles
articles=[]
for url in urls:
soup=getSoup(url)
articles.append(getContent(soup))
t=""
for item in articles:
t=t+(str)(item)
# 制作詞云
import jieba
import wordcloud
jieba.add_word("淮南師范學(xué)院")
ls=jieba.lcut(t)
w=wordcloud.WordCloud(width=1000,height=700,background_color='white',font_path='simhei.ttf')
txt=" ".join(ls)
w.generate(txt)
w.to_file('out1.png')
文章來源:http://www.zghlxwxcb.cn/news/detail-773404.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-773404.html
到了這里,關(guān)于Python實(shí)驗(yàn)項(xiàng)目9 :網(wǎng)絡(luò)爬蟲與自動(dòng)化的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!