這幾天閒的無聊想做乙個爬蟲來爬取一些『正經』**,首先選擇用python作為爬蟲的語言。但是沒有接觸過python怎麼辦呢,只能從頭開始學了。python學習位址這個是廖大神寫的乙個python入門,個人感覺寫的非常不錯,在粗略的學習了一遍之後感覺可以開始我的爬蟲之旅了。
目標:抓取中妹子的儲存在本地
接下來分析一下我們需要做的事
話不多少,直接上**
from urllib import request
from html.parser import htmlparser
import os
class
myhtml
(htmlparser):
path=os.path.join(os.path.abspath('.'),'pic')
ifnot os.path.exists(path):
os.mkdir(path)
defhandle_starttag
(self,tag,attrs):
if tag=='img'
and attrs[0][0]=='pic_type'
and attrs[0][1]=='0':
print(attrs[2][1])
with request.urlopen(attrs[2][1]) as picdate:
with open(os.path.join(self.path,attrs[2][1][-10:]),'wb') as fd:
fd.write(picdate.read())
with request.urlopen('') as f:
if f.status==200:
parser=myhtml()
parser.feed(f.read().decode('utf-8'))
else:
print ('url error')
這一部分都比較簡單,用urllib獲取到頁面資訊後,通過htmlparser對有用的資訊進行提取,然後再使用urllib載入儲存到本地
通過上乙個例子我們已經對爬蟲的爬取過程有了乙個初步的了解,接下來我們需要接受更大的世界了。
目標:首先想到的是通過之前的經驗,先獲取html再從html中載入資訊。
但是通過檢視網頁的原始碼後就發現,原來網頁上的那麼多的妹子的居然一張也沒有在原始碼中顯示。看來原來爬取靜態網頁的方法已經不適用了,我們要使用其他的手段了。
分析js**,找出新增的內容
先讓js執行,我們從js處理完畢的html中獲取我們想要的資訊
還有乙個非常實用的爬蟲工具需要安裝pip install beautifulsoup4,這個是用來提取html元素的。如果不是很了解可以參考這篇文章
好了,準備工作都做好了,可以開工了
from urllib import request
from bs4 import beautifulsoup
from selenium import webdriver
import os
import time
class
myhtml
():def
__init__
(self):
self.host=''
self.path=os.path.join(os.path.abspath('.'),'mm')
ifnot os.path.exists(self.path):
os.mkdir(self.path)
self.browser=webdriver.phantomjs()
self.count=0
defstart
(self,n=false):
ifnot n:
print(self.host)
self.browser.get(self.host)
print('第'+str(self.count)+'項')
print('這個位址有問題')
if self.count<10:#資料太多這裡只取前十項
self.browser.find_element_by_class_name('page-next').click()
# time.sleep(3)
self.start(true)
self.count=self.count+1
if'__main__'==__name__:
myhtml().start()
到這裡我們已經知道了python爬蟲的入門用法。但是我們發現這個爬蟲的效率太低,這時可以用多執行緒提高爬蟲效率。當同乙個ip在乙個**訪問頻率太高時可能會出現驗證碼,這時需要做訪問延遲和使用**ip。爬蟲路還很長,還有許多知識需要學習。 Python爬蟲入門
今天看了菜鳥教程的python教程,準備做個小作業寫個爬蟲程式。其中主要涉及到基本語法 正規表示式 urllib和re兩個模組。import urllib 載入模組 import re defgethtml url page urllib.urlopen url html page.read ret...
python爬蟲入門
初學者要學會基本的爬蟲 先要安裝包requests requests的安裝 開啟這個 在這個 上面有很多 python 的第三方庫檔案,我們按 ctrl f 搜尋很容易找到 requests 如下圖,我們將第乙個資料夾,也就是 requests 資料夾複製到 python 的安裝目錄下的 lib 目...
python爬蟲入門
首先注意,學習新東西,需要迅速的成就感,所以有其他程式語言基礎或者略懂的同志們,可以直接上手寫 不會學 先搞個基本例子,有結果的 之後在繼續深入研究 這是乙個可以直接看到列印結果的菜鳥級爬蟲 開啟連線的基本 可以獲取網頁編碼 其實天下文章一大抄,也能先抄抄 先爽了再說 from urllib imp...