python爬蟲常用的模塊分析
本文對(duì)Python爬蟲常用的模塊做了較為深入的分析,并以實(shí)例加以深入說明。分享給大家供大家參考之用。具體分析如下:
creepy模塊
某臺(tái)灣大神開發(fā)的,功能簡(jiǎn)單,能夠自動(dòng)抓取某個(gè)網(wǎng)站的所有內(nèi)容,當(dāng)然你也可以設(shè)定哪些url需要抓。
地址:https://pypi.python.org/pypi/creepy
功能接口:
set_content_type_filter:
設(shè)定抓取的content-type(header中的contenttype)。包括text/html
add_url_filter:
過濾url,傳入的可以是正則表達(dá)式
set_follow_mode:
設(shè)定遞歸模式,F(xiàn)_ANY:該頁(yè)面上所有鏈接都會(huì)抓取。 F_SAME_DOMAIN和F_SAME_HOST類似。即同一個(gè)域名的都會(huì)抓取。F_SAME_PATH:同一路徑的抓取。例如bag.vancl.com/l1/d3/1.jpg path為l1/d3/1.jpg,則path為l1/d3/*的都會(huì)抓取。這里可以根據(jù)需要增加自己的遞歸模式
set_concurrency_level:
設(shè)定線程最大數(shù)
process_document:
一般需要重寫,處理網(wǎng)頁(yè)內(nèi)容,提取自己需要的內(nèi)容。
selenium
可視化界面,抓取自動(dòng)化,api使用超簡(jiǎn)單,完全像是自己在操作瀏覽器。
官方網(wǎng)站:http://www.seleniumhq.org/
python官方網(wǎng)站
http://pypi.python.org/pypi/selenium
webdriver api(很好用,建議多了解一下)
http://www.seleniumhq.org/docs/03_webdriver.jsp
以下是一個(gè)抓取凡客網(wǎng)站的例子:
from selenium import webdriver from selenium.webdriver.common.keys import Keys import time browser = webdriver.Firefox() browser.get('http://bag.vancl.com/28145-28167-a18568_18571-b1-n3-s1.html#ref=hp-hp-hot-8_1_1-v:n') elem = browser.find_element_by_name('ch_bag-3-page-next') # Find the search box time.sleep(1) print elem.get_attribute("href") elem.click() time.sleep(1) elem = browser.find_element_by_name('ch_bag-3-page-next') # Find the search box print elem.get_attribute("href") elem.click()
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
- python pickle 和 shelve模塊的用法
- python使用cPickle模塊序列化實(shí)例
- python使用marshal模塊序列化實(shí)例
- python中bisect模塊用法實(shí)例
- Python中itertools模塊用法詳解
- python time模塊用法實(shí)例詳解
- Python常用模塊用法分析
- python中的hashlib和base64加密模塊使用實(shí)例
- python進(jìn)階教程之模塊(module)介紹
- python re正則表達(dá)式模塊(Regular Expression)
- Python Deque 模塊使用詳解
- python實(shí)現(xiàn)通過shelve修改對(duì)象實(shí)例
相關(guān)文章
Python網(wǎng)絡(luò)編程之ZeroMQ知識(shí)總結(jié)
這篇文章主要介紹了Python網(wǎng)絡(luò)編程之ZeroMQ知識(shí)總結(jié),文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們有非常好的幫助,需要的朋友可以參考下2021-04-04使用NumPy進(jìn)行數(shù)組數(shù)據(jù)處理的示例詳解
NumPy是Python中用于數(shù)值計(jì)算的核心包之一,它提供了大量的高效數(shù)組操作函數(shù)和數(shù)學(xué)函數(shù),可以支持多維數(shù)組和矩陣運(yùn)算。本文主要為大家介紹了NumPy進(jìn)行數(shù)組數(shù)據(jù)處理的具體方法,需要的可以參考一下2023-03-03pytest解讀fixture有效性及跨文件共享fixtures
這篇文章主要為大家介紹了pytest官方文檔fixture有效性及跨文件共享fixtures的解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06Python實(shí)現(xiàn)按目錄層級(jí)輸出文件名并保存為excel
當(dāng)我們發(fā)現(xiàn)電腦的內(nèi)存很滿,或平時(shí)工作中文件夾管理不清晰,導(dǎo)致里面的文件數(shù)據(jù)很雜亂,查找很不方便,一個(gè)一個(gè)文件夾去看去找然后刪除又很浪費(fèi)時(shí)間。本文將介紹如何利用Python實(shí)現(xiàn)按目錄層級(jí)輸出文件名并保存為excel,需要的可以參考一下2022-02-02