歡迎您光臨本站 註冊首頁

為什麼說python適合寫爬蟲

←手機掃碼閱讀     bom485332 @ 2020-06-12 , reply:0

抓取網頁本身的接口

相比與其他靜態編程語言,如java,c#,C++,python抓取網頁文檔的接口更簡潔;相比其他動態腳本語言,如perl,shell,python的urllib2包提供了較為完整的訪問網頁文檔的API。(當然ruby也是很好的選擇)

此外,抓取網頁有時候需要模擬瀏覽器的行為,很多網站對於生硬的爬蟲抓取都是封殺的。這是我們需要模擬user agent的行為構造合適的請求,譬如模擬用戶登陸、模擬session/cookie的存儲和設置。在python裡都有非常優秀的第三方包幫你搞定,如Requests,mechanize

網頁抓取後的處理

抓取的網頁通常需要處理,比如過濾html標籤,提取文本等。python的beautifulsoap提供了簡潔的文檔處理功能,能用極短的代碼完成大部分文檔的處理。

其實以上功能很多語言和工具都能做,但是用python能夠幹得最快,最乾淨。Life is short, u need python.

衝最後一句‘Lifeisshort,uneedpython',立馬在噹噹上買了本python的書!以前就膜拜過python大牛,一直想學都扯於各種藉口遲遲沒有開始。。

py用在linux上很強大,語言挺簡單的。

  • NO.1 快速開發(唯一能和python比開發效率的語言只有rudy)語言簡潔,沒那麼多技巧,所以讀起來很清楚容易。

  • NO.2跨平臺(由於python的開源,他比java更能體現"一次編寫到處運行"

  • NO.3解釋性( 無須編譯,直接運行/調試代碼)

  • NO.4構架選擇太多(GUI構架方面 主要的就有 wxPython, tkInter, PyGtk, PyQt 。

知識點擴展:

用python寫爬蟲相關的實例:

  # coding:utf-8  import urllib    domain = 'http://www.liaoxuefeng.com'   #廖雪峰的域名  path = r'C:Userscyhhao2013Desktop	emp' #html要保存的路徑    # 一個html的頭文件  input = open(r'C:Userscyhhao2013Desktop.html', 'r')  head = input.read()    # 打開python教程主界面  f = urllib.urlopen("http://www.需要爬取的網址.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000")  home = f.read()  f.close()    # 替換所有空格回車(這樣容易好獲取url)  geturl = home.replace(" ", "")  geturl = geturl.replace(" ", "")    # 得到包含url的字符串  list = geturl.split(r'em;">')[0]   url = domain + url    #拼湊url   print url   f = urllib.urlopen(url)   html = f.read()     # 獲得title為了寫文件名   title = html.split("")[1]   title = title.split(" - 廖雪峰的官方網站")[0]     # 要轉一下碼,不然加到路徑裡就悲劇了   title = title.decode('utf-8').replace("/", " ")     # 截取正文   html = html.split(r'')[1]   html = html.split(r'您的支持是作者寫作最大的動力!')[0]   html = html.replace(r'src="', 'src="' + domain)     # 加上頭和尾組成完整的html   html = head + html+""     # 輸出文件   output = open(path + "%d" % list.index(li) + title + '.html', 'w')   output.write(html)   output.close()

  


[bom485332 ] 為什麼說python適合寫爬蟲已經有232次圍觀

http://coctec.com/docs/python/shhow-post-238288.html