【Python】スクレイピングしてみた
日経トップページから、トップニュース15件?を抜き出してみた。
http://www.nikkei.com/
(日本経済新聞様、マズければご指摘ください)
以下ソース。
import urllib.request from bs4 import BeautifulSoup import pprint url = "http://www.nikkei.com/" response = urllib.request.urlopen(url) data = response.read() soup = BeautifulSoup(data,"html.parser") article = [] #トップニュース取得 top = soup.find(class_ = "nx-top_news_first cmn-clearfix") top = top.find(class_="cmnc-large") article.append(top.string) #セカンドニュース?取得 seconds_all = soup.find(class_="nx-top_news_second cmn-clearfix") seconds = seconds_all.find_all(class_="cmnc-middle") #print(seconds) for i in range(len(seconds)): art = seconds[i].string article.append(art) #print(art) #forth news取得 fourth_all = soup.find_all(class_="nx-top_news_fourth cmn-clearfix") for i in range(len(fourth_all)): art = fourth_all[i].find(class_="cmnc-xsmall") article.append(art.string) #print(art.string) #print(article) #print(len(article)) #\u3000を置換、表示 result = [] for i in range(len(article)): s = str(article[i]) s = s.replace('\u3000',' ') print(s) result.append(s) #print(result) print(len(result))
実行結果は以下の通り。