Pythonがbs 4ライブラリの爬虫類を使用した例
5039 ワード
実験内容:
http://www.zuihaodaxue.cn/zuihaodaxuepaiming2019.html
ホームページから大学のランキングを抽出します.
を選択します.
含む
ランキング、学校名、省市、総得点及びすべての指標得点(進学生の大学入試成績得点、育成結果(卒業生の就職率)、社会的名誉(社会寄付収入・
千元)、研究規模(論文数
・
篇)、研究品質(論文品質・FWCI
)、トップクラスの成果(高い引用論文
・
編)、トップ人材(高所学者・
科学技術サービス(企業研究経費)
・
千元)、成果転化(技術譲渡収入・
千元)、学生の国際化(留学生の割合)
を選択します.
大学ランキング
.csv」
.
import re,requests
import csv
import numpy
import lxml
from bs4 import BeautifulSoup
url1 = "http://www.zuihaodaxue.cn/zuihaodaxuepaiming2019.html"
html1 = requests.get(url1).content.decode()
soup = BeautifulSoup(html1,'lxml')
tag = soup.find(class_='table table-small-font table-bordered table-striped')
text1 = tag.find_all('th')[0:4]
text2 = tag.find_all('option')
text3 = tag.find_all('td')
th = []
td = []
for a in text1+text2:
th += [a.string]
for a in text3:
td += [a.string]
td = numpy.array(td).reshape(int(len(text3)/14),14)
with open(' .csv','w',newline='',encoding='utf-8') as f:
writer = csv.writer(f)
#writer.writeheader()
writer.writerow(th)
for a in td:
print(a)
writer.writerow(a)
実験内容:
https://www.dxsbb.com/news/5463.html
ウェブサイトから大学のランキング情報を抽出し、
ランキング、学校名、総合得点、星ランク及び学校運営レベルの情報を含みます.
大学ランキング校友会版
.csv」
.
import re,requests
import csv
import numpy
import lxml
from bs4 import BeautifulSoup
url1 = "https://www.dxsbb.com/news/5463.html"
html1 = requests.get(url1).content.decode('gbk')
soup = BeautifulSoup(html1,'html.parser')
text1 = soup.find_all('tbody')[1].find_all('td',)
td = []
for a in text1:
td += [a.text]
td = numpy.array(td).reshape(int(len(text1)/5),5)
with open(' .csv','w',newline='',encoding='utf-8') as f:
writer = csv.writer(f)
#writer.writeheader()
for a in td:
print(a)
writer.writerow(a)
実験内容:
(
1
)ウェブサイトを開く
http://dianying.2345.com/list/----2019---.html
下のページをクリックして、ホームページのURLを確認してください.
リンクの変化;
(
2
)第一ページのページを登った中、すべての映画の
<>
名前
>
を選択します
<>
役者
>
および
<>
スコア
>
(
3
)手順二のモードで関数を作成し、
循環構造を利用して全ページの映画の情報を取得する.
(
4
)這い取った情報を保存する
「
最新の映画情報
.csv」
ファイルにあります
import re,requests
import csv
import numpy
import lxml
from bs4 import BeautifulSoup
film_list = []
for i in range(1,30):
url = "http://dianying.2345.com/list/----2019---" + str(i) + ".html"
html = requests.get(url).text
soup = BeautifulSoup(html, 'html.parser')
filename_tag = soup.find_all('em', class_='emTit')
score_tag = soup.find_all('span', {"class": "pRightBottom"})
star_tag = soup.find_all('span', {"class": "sDes"})
for i in range(0, len(filename_tag)):
tag = star_tag[i]
if (tag.em != None):
temp = tag.text.strip().split(":")[1].split("\xa0\xa0\xa0")
else:
temp = [' ']
film_list += [[filename_tag[i].text, score_tag[i].em.text] + temp]
with open(' .csv', 'w', newline='', encoding='utf-8') as f:
writer = csv.writer(f)
#writer.writerow([" "," "," "])
for a in film_list:
print(a)
writer.writerow(a)
(
1
)
http://www.zhcw.com/ssq/kaijiangshuju/index.shtml?type=0
を選択して、このウェブサイトを開き、ブラウザから「
チェック
」
このページのデータソースの法則を見つけます.
(
2
)はいて取る
1-150
ページの中から全部当選しました.
<>
授賞式の時間
>
を選択します
<>
約束番号
>
を選択します
<>
当籤番号>
を選択します
<>
売上高
>
3、
<>
一等賞
>
3、
<>
二等賞
>
情報を保存
CSV
ファイル
import re,requests
import csv
from bs4 import BeautifulSoup
form = []
for i in range(1,2):
url1 = "http://kaijiang.zhcw.com/zhcw/html/ssq/list_%s.html" %(i)
html1 = requests.get(url1).text
soup = BeautifulSoup(html1, 'html.parser')
tag = soup.find_all('tr')
print(tag)
for a in tag[2:len(tag) - 1]:
temp = []
for b in a.contents[0:12]:
if (b != '
'):
temp += [b.text.strip().replace('\r
', '').replace(' ', '').replace('
', ' ')]
form.append(temp)
with open(' .csv','w',newline='',encoding='utf-8') as f:
writer = csv.writer(f)
writer.writerow([' ', ' ', ' ', ' ( )', ' ', ' '])
for a in form:
print(a)
writer.writerow(a)