爬蟲簡單總結

模塊的安裝:pip intall 模塊名稱

requests:是一個常用的用於http請求的模塊,它使用python語言編寫,可以方便的對網 頁進行爬取,是學習python爬蟲的較好的http 請求模塊。

BeautifulSoup:是編寫 python 爬蟲常用庫之一,主要用來解析 html 標籤

import josn:是一種輕量級的數據交換格式,易於人閱讀和編寫。

xwlt:這是一個開發人員用來生成與微軟Excel版本95到2003兼容的電子表格
文件的庫。

mongo:非關係型數據庫
鏈接數據庫
./mongod *&
./mongo
pymongo

import os:OS:模塊簡單的來說它是一個Python的系統編程的操作模塊,可以處理文件和目錄這些我們日常手動需要做的操作。

import sys:sys模塊包含了與Python解釋器和它的環境有關的函數。

from pc1 import :導入模塊,每次使用模塊中的函數,直接使用函數就可以了。注:因爲已經知道該函數是那個模塊中的了。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
通過網頁爬蟲,獲取每一名運動員的信息,並存到Excel表格中。
https://www.iaaf.org/records/toplists/sprints/100-metres/outdoor/men/senior/2018?page={}

程序思路:
一、通過運動員網址信息獲得headers,以瀏覽器的身份瀏覽訪問網址。找到'records-table'標籤,繼續fand_all('tr')。td的列表第三項是帶href只要把td_l裏面的每一項賦值就好了,組成json數據{}插入到mongo。
二、找到id='progression'標籤裏的'h2'標籤。print(tbody) # 可以拿到裏面的數據。兩份,一份是室外,一份是室內。
三、def get_href():負責去mongo中取href,取到了然後訪問得到的數據,存到原來的表中
四、把mongo數據庫中的數據導入到Excel表格中。創建一個book 設置編碼book = xlwt.Workbook(encoding='utf-8',style_compression=0)寫入excel 參數對應 行, 列, 值
sheet = book.add_sheet('iaaf',cell_overwrite_ok=True)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
知識點總結:
headers = { 'User-Agent':}:我們設置了一個headers,在構建request時傳入,在請求時,就加入了headers傳送,服務器若識別了是瀏覽器發來的請求,就會得到響應。

find_all(' '):找到BeautifulSoup對象內任何第一個標籤入口,使用find()方法。

try-except:語句(以及其更復雜的形式)定義了進行異常監控的一段代碼, 並且提供了處理異常的機制。

parent:通過 .parent 屬性來獲取某個元素的父節點

append:append() 方法用於在列表末尾添加新的對象。

strip():用於移除字符串頭尾指定的字符(默認爲空格或換行符)或字符序列。

if name == 'main': :在if name == 'main':下的代碼只有文件作爲腳本直接執行纔會被執行,而import到其他腳本中是不會被執行的。
encoding=utf-8:用來說明你的Python源程序文件用使用的編碼。缺省情況下你的程序需要使用ascii碼來寫,但如果在其中寫中文的話,python解釋器一般會報錯,但如果加上你所用的文件編碼,python就會自動處理不再報錯。

book = xlwt.Workbook:創建excel

cell_overwrite_ok=True:這個參數是覆寫的意思,默認是False,如果你現在要寫的單元格里面,已經有內容了,就不能寫了,如果你要是寫的話會報錯的。當然,我們在使用的時候,最好是設置成True。 這樣對同一個單元格寫入兩次的話就不會報錯了,當然,只會保留最後一次寫入的值。

len(): len()方法返回對象(字符、列表、元組等)長度或項目個數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章