1. 程式人生 > >Python爬蟲的簡單入門及實用的例項(1)

Python爬蟲的簡單入門及實用的例項(1)

一.PYthon爬蟲的介紹及應用

     利用爬蟲可以進行資料探勘,比如可以爬取別人的網頁,收集有用的資料進行整合和劃分,簡單的就是用程式爬取網頁上的所有圖片並儲存在自己新建的資料夾內,還有可以爬社交網站的自拍圖,將幾十萬張的圖片合在一起,就知道大眾的模樣。也可以將爬取的資料進行處理,生成一種視覺化的東西。

二.請求網頁的過程

         (注:編者用的環境為Python3.6.1,python2.x和Python3.x在這個上有所不同,2.x有兩個urllib和urllib2,而3.x只有urllib

        主要用到urllib這個庫

         請求的網頁的過程簡單的理解就是向伺服器傳送一個頭資訊,然後返回一個資訊。

         可以檢視網頁的元素看到,
常見的所使用的方法也就是GET,POST
在過濾訊息頭裡可以看出有個引數就是User-Agent,這個就是訪問請求的環境,一般為瀏覽器,如果用程式訪問時,為Python3.x,這是就不允許訪問了,防止惡意訪問,但也有方法偽裝

3

三.簡單的爬個網頁

import urllib.resquest
url="http://www.baidu.com"
response=urllib.resquest.urlopen(url)
html=respose.read()
for eachline in html:
    print(eachline)
url分為三部分

①第一部分是協議(或稱為服務方式)。
②第二部分是存有該資源的主機IP地址(有時也包括埠號)。
③第三部分是主機資源的具體地址,如目錄和檔名等。

四.一個好玩的翻譯的例子,讓你分分鐘瞭解爬蟲的好玩之處

2

import urllib.request
import urllib.parse
import json


content=input("請輸入需要翻譯的內容:\n")


url='http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=https://www.baidu.com/link'
data={}
data['type']='AUTO'
data['i']=content
data['doctype']='json'
data['xmlVersion']='1.8'
data['keyfrom']='fanyi.web'
data['ue']='UTF-8'
data['action']='FY_BY_CLICKBUTTTON'
data['typoResult']='true'

data=urllib.parse.urlencode(data).encode('utf-8')

response=urllib.request.urlopen(url,data)
html=response.read().decode('utf-8')

target=json.loads(html)
print('翻譯結果為:%s' % (target['translateResult'][0][0]['tgt']))
urllib.request.urlopen(url,data)
data為圖中的請求資料
url為上上圖中的請求網址