python爬蟲簡單 python爬蟲 簡單版

2021-10-11 01:23:10 字數 2491 閱讀 6175

學過python的帥哥都知道,爬蟲是python的非常好玩的東西,而且python自帶urllib、urllib2、requests等的庫,為爬蟲的開發提供大大的方便。

這次我要用urllib2,爬一堆風景。

先上重點**

1 response =urllib2.urlopen(url).read()2 soup =beautifulsoup(3 response, #html字串

4 'html.parser', #html解析器

5 from_encoding='utf-8' #字元編碼

6 )其中,urlopen就顧名思義了,可以簡單理解為開啟乙個url,然後獲得該url相對應的東西在python裡的物件,然後通過read之後,就得到了頁面的所有構成元素了

1 if __name__=='__main__':2 s = urllib2.urlopen('')3 print(s.read(100))

read可以傳引數,在這裡是讀取100個字元,結果如下:

然後上面重點**裡的soup是乙個beautifulsoup物件,是乙個第三方的用於html頁面內容解析的庫,當建立了乙個beautifulsoup物件之後,就可以用這個物件對html的內容進行解析,比如:

1 attr =4 nodes = soup.find_all('a',attr)

find_all()函式是查詢所有符合引數條件的元素,上面的**就是查詢所有類名為pic的a元素,除了find_all之外,還有乙個find元素,是查詢符合條件的第乙個元素,知道這兩個函式之後,已經可以爬東西了。

importurllib2from bs4 importbeautifulsoupdefspider_image(url,pre_filename):

response=urllib2.urlopen(url).read()

soup=beautifulsoup(

response,#html字串

'html.parser', #html解析器

from_encoding='utf-8' #字元編碼

attr={'class':'pic',#'page':'2'

nodes= soup.find_all('a',attr)

url_list=set()for node innodes:try:

url_list.add(node['href'])except:pass

for url inurl_list:

img_html=urllib2.urlopen(url).read()

soup=beautifulsoup(

img_html,#html字串

'html.parser', #html解析器

from_encoding='utf-8' #字元編碼

defmkdir(path):#引入模組

importos#去除首位空格

path=path.strip()#去除尾部 \ 符號

path=path.rstrip("\\")#判斷路徑是否存在

#存在 true

#不存在 false

i***ists=os.path.exists(path)#判斷結果

if noti***ists:#如果不存在則建立目錄

print path+'建立成功'

#建立目錄操作函式

os.makedirs(path)returntrueelse:#如果目錄存在則不建立,並提示目錄已存在

print path+'目錄已存在'

returnfalseif __name__=='__main__':

url_list=['']

i= 1

mkpath='f:\\spider'+str(i)#呼叫函式

mkdir(mkpath)

spider_image(url,'f://spider//spider_image'+str(i)+'//')

i= i + 1

爬的話,其實就是讀取到之後,轉成二進位制資料之後,寫入檔案就行了,然後執行就可以了,然後就看到一堆在目錄裡

當然,這算是最基礎,什麼情況都沒遇到,超順利,隨著你想爬更多東西,會發現有很多反爬蟲的東西,比如cookie,驗證碼,ajax動態載入之類的,遇到這些東西,要爬的話,需要做更多更多的工作,當然,這麼好玩的東西,做再多工作都是值得的。

簡單python爬蟲

一段簡單的 python 爬蟲程式,用來練習挺不錯的。讀出乙個url下的a標籤裡href位址為.html的所有位址 一段簡單的 python 爬蟲程式,用來練習挺不錯的。讀出乙個url下的a標籤裡href位址為.html的所有位址 usr bin python filename test.py im...

Python簡單爬蟲

一.獲取整個頁面的資料 coding utf 8 import urllib defgethtml url page urllib.urlopen url html page.read return html html gethtml print html 二.篩選需要的資料 利用正規表示式來獲取想...

Python簡單爬蟲

一 什麼是爬蟲 爬蟲 一段自動抓取網際網路資訊的程式。價值 網際網路資料為我所用。二 爬蟲架構 執行流程 三 幾種實現方式 四 url管理器 定義 管理待抓取url集合和已抓取url集合 防止重複抓取 防止迴圈抓取 url print 第一種方法 response1 urllib2.urlopen ...