爬取研招網-考研動態所有的文章的的的的的
我是分割線....
import csv這裡爬取鏈結用的是xpath,畢竟bs4的強項還是在處理文字上,下面獲取具體內容全部用的bs4import time
import requests
from bs4 import beautifulsoup
1234
這裡就是為了獲取 尾部url 即tail_url, 後面會用到,我們把所有的tail_url 放入到乙個列表,後面會用到 (tail_url 是個人定義的乙個變數,不是什麼內建的東西…)
# 獲取所有子路由,並儲存到乙個列表中先試試爬乙個文章,後面直接for迴圈就行.# 並未使用bs4解析器
url_page_num = 0
tail_urls =
for i in range(1, page_num):
url = "".format(url_page_num)
res=requests.get(url).text
dom=etree.html(res)
for list_num in range(1,51):
time.sleep(1)
url_page_num += 50
print(tail_urls)
123456789101112131415
# 使用 bs4 對html解析head_url = ''
total_url = head_url + tail_urls[0]
res=requests.get(total_url)
soup = beautifulsoup(res.content, 'lxml')
# 獲取正文
art_content = soup.find(class_="content-l detail").get_text()
art_head = soup.find(class_="title-box").get_text().split("\n")
art_title, art_date, art_source = art_head[1], art_head[2].split("日")[0] + "日", art_head[3].strip()
似乎看起來很不錯~~下面我們只需要新增for迴圈,然後寫入csv就可以了. : )
head_url = ''one_page_result =
for tail_url in tail_urls:
# 拼接好了url,就請求,然後對網頁解析
total_url = head_url + tail_url
res=requests.get(total_url)
soup = beautifulsoup(res.content, 'lxml')
art_head = soup.find(class_="title-box").get_text().split("\n")
art_title, art_date, art_source = art_head[1], art_head[2].split("日")[0] + "日", art_head[3].strip()
# 獲取正文
art_content = soup.find(class_="content-l detail").get_text()
with open("art_all.csv", "a+") as f:
writer = csv.writer(f, dialect="excel")
# 基於檔案物件構建 csv寫入物件
csv_write = csv.writer(f)
csv_data = one_page_result # 存入
csv_write.writerow(csv_data)
f.close()
print(art_title, art_date+"寫入成功", "標記:"+tail_url)
從研招網爬取招生目錄
工具 火車採集器 八爪魚 jupyter notebook excel 過程略顯繁瑣,剛入門不了解工具的使用,應該有更好的方法 這裡僅僅提供自己的一種思路,適合程式設計小白 手動收集 第一級 研招網由於是使用表單對資料進行篩選,不同表單查詢出來的資料不一樣,我們不需要所有資料,根據網域名稱規則,選擇...
研招網考研出成績自動鳴笛指令碼
等待過於焦慮,於是寫乙個自動鳴笛 來檢測是否出成績。出成績自動呼叫winsound.messagebeep 主函式裡check new傳入學校 即可。import requests import json import winsound import time defalert print aaa ...
爬取裁判文書網 一
1 裁判文書網位址 2 分析 1 型別是動態 2 網頁源 中並沒有我們想要的頁面內容,且引用許多js 3 檢視列表頁是否有專門的json介面。4 通過開發者工具檢視network,發現了乙個json介面。即listcontent。8 根據經驗,一般引數 如下 1 某乙個url,它的響應頭 respo...