乙個簡易爬蟲,主要功能是爬取全國各地空氣質素資料,輸出到乙個csv檔案,後續加入相關資料處理得出實時空氣質素排名前10和後10的城市及其空氣質素(aqi)。
使用的是beautifulsoup庫,具體用法參照
import requests
from bs4 import beautifulsoup
import csv
def get_city_aqi(city_pinyin):
url = '' + city_pinyin
r = requests.get(url, timeout=30)
soup = beautifulsoup(r.text, 'lxml')
div_list = soup.find_all('div', )
city_aqi =
for i in range(8):
div_content = div_list[i]
caption = div_content.find('div', ).text.strip()
value = div_content.find('div', ).text.strip()
return city_aqi
def get_all_cities():
url = ''
city_list =
r = requests.get(url, timeout=30)
soup = beautifulsoup(r.text, 'lxml')
city_div = soup.find_all('div', )[1]
city_link_list = city_div.find_all('a')
for city_link in city_link_list:
city_name = city_link.text
city_pinyin = city_link['href'][1:]
return city_list
def main():
city_list = get_all_cities()
header = ['city', 'aqi', 'pm2.5/h', 'pm10/h', 'co/h', 'no2/h', 'o3/h', 'o3/8h', 'so2/h']
with open('china_cities_aqi.csv', 'w', encoding='utf-8', newline='') as f:
writer = csv.writer(f)
writer.writerow(header)
for i, city in enumerate(city_list):
if(i + 1) % 10 == 0:
print('已處理{}條記錄(共{}條)'.format(i + 1, len(city_list)))
city_name = city[0]
city_pinyin = city[1]
city_aqi = get_city_aqi(city_pinyin)
row = [city_name] + city_aqi
writer.writerow(row)
if __name__ == '__main__':
main()
乙個入門級python爬蟲教程詳解
爬蟲的定義 定向抓取網際網路內容 大部分為網頁 並進行自動化資料處理的程式。主要用於對鬆散的海量資訊進行收集和結構化處理,為資料分析和挖掘提供原材料。今日t條就是乙隻巨大的 爬蟲 爬蟲由url庫 採集器 解析器組成。如果待爬取的url庫不為空,採集器會自動爬取相關內容,並將結果給到解析器,解析器提取...
go 入門級 乙個http服務
servemux 是go自帶的http請求處理器,是乙個路由表,存放key value。根據請求路徑 key 在路由表中查詢,按照最長匹配原則 並將請求交給對應的處理函式 value 匯入http包,介紹幾個方法 http.listenandserve addr string,handler han...
乙個NLP入門級的完整實驗(一)
nlp發展已經很長一段時間了,相比cv,nlp入門要難一些,我相信很多人都像我當初一樣,看了很多的演算法,公式,模型,一頭霧水,看懂了又好似沒看懂,模型原理背的滾瓜爛熟,但是做不出來東西,看了別人的原始碼感覺好像就那麼回事,但是復現不出來。因此,我決定從乙個具體的實驗角度一步一步的循序漸進,像是寫日...