python爬蟲案例 Python爬蟲案例集合

2021-10-10 03:55:52 字數 2274 閱讀 6466

在python2.x裡面有urllib和urllib2;在python3.x裡面就把urllib和urllib2合成乙個urllib;urllib3是在python3.x了裡面新增的第三方擴充套件。

import urllib.request

# 向指定的url位址傳送請求,並返回伺服器響應的類檔案物件

response = urllib.request.urlopen("")

# 伺服器返回的類檔案物件支援python檔案物件的操作方法

# read()方法就是讀取檔案裡的全部內容,返回字串

html = response.read()

# 列印響應內容

我們需要稍微偽裝下,要不然第一步就會被反爬蟲發現

#!/usr/bin/env python

# -*- coding:utf-8 -*-

import urllib.request

# urllib2 的user-agent: python-urllib/2.7

# user-agent 爬蟲和反爬蟲的第一步

通過post請求到有道翻譯

有些**的查詢傳參不是直接在url上面拼接而且通過post form data進行,這個時候傳遞就要模擬post請求

from urllib import request,parse

# 通過抓包的方式獲取的url,並不是瀏覽器上顯示的url

url = ""

# 完整的headers

headers = {

"x-requested-with" : "",

# 使用者介面輸入

key = input("請輸入需要翻譯的文字:")

# 傳送到web伺服器的表單資料

formdata = {

"from" : "auto",

"to" : "auto",

"smartresult" : "dict",

"client" : "fanyideskweb",

"type" : "auto",

"i" : key,

"doctype" : "json",

"keyfrom" : "fanyi.web",

"ue" : "utf-8",

"version":"2.1",

"action" : "fy_by_clickbutton",

"typoresult" : "false"

# 經過urlencode轉碼

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

print(data)

# 如果request()方法裡的data引數有值,那麼這個請求就是post

# 如果沒有,就是get

request1 = request.request(url, data = data, headers = headers)

print(request.urlopen(request1).read().decode('utf-8'))

抓取ajax豆瓣電影

有些時候頁面上面是空的,內容通過ajax來載入,那麼我們爬蟲需要關注點就應該到資料來源這個位置,ajax載入的頁面,資料來源一定是json,拿到json也就拿到了資料

python案例 Python爬蟲案例集合

urllib2 在python2.x裡面有urllib和urllib2 在python3.x裡面就把urllib和urllib2合成乙個urllib urllib3是在python3.x了裡面新增的第三方擴充套件。urllib2 官方文件 urllib2 原始碼 urllib2 在 python3....

python爬蟲案例講解 Python爬蟲案例集合

伺服器返回的類檔案物件支援python檔案物件的操作方法 read 方法就是讀取檔案裡的全部內容,返回字串 html response.read 列印響應內容 我們需要稍微偽裝下,要不然第一步就會被反爬蟲發現 usr bin env python coding utf 8 import urllib...

python爬蟲吧 Python爬蟲案例集合

urllib2 在python2.x裡面有urllib和urllib2 在python3.x裡面就把urllib和urllib2合成乙個urllib urllib3是在python3.x了裡面新增的第三方擴充套件。urllib2 官方文件 urllib2 原始碼 urllib2 在 python3....