Python中爬取網頁的幾種方法

2021-08-25 11:58:42 字數 2264 閱讀 2806

爬蟲是python語言最基本的用法之一,爬蟲的前提就是資料請求,資料請求方法就urlopen和requests這兩種比較常用,而兩種方法大同小異,具體我們通過**來看看

urlopen分為兩種情況:

一:請求**中沒有中文

from urllib.request import request,urlopen

def url_urlopen(self):

url=''

headers =

request=request(url,headers=headers)

response=urlopen(request)

code=response.read().decode()

print(code)

二:請求**中有中文,需要對**進行解析

from urllib.request import request,urlopen

from urllib.parse import quote

import string

def url_urlopen(self):

url='鄭州'

response=urlopen(quote(url,safe=string.printable))

code=response.read().decode()

print(code)

request方法沒有對**的要求,相對於urlopen比較簡單

import requests

def url_requests(cls):

url=''

headers =

code=requests.get(url,headers=headers).content.decode()

print(code)

上面這兩種方法不支援修改ip,獲取cookie,驗證**等內容

如果要使用這些內容,需要使用build_opener來進行處理

1.匯入相關第三方庫

import random

from urllib.request import request,urlopen,proxyhandler,bulid_opener

2.準備一些ip(注意網域名稱),並設定headers

ip_list=[

'255.255.255.99:99',

'255.255.254.99:99',

'255.255.253.99:99',

'255.255.252.99:99',

]headers =

3.請求**並隨機乙個ip

如果網域名稱是http,則key值為http

如果網域名稱是https,則key值為https

proxy=

request=request('',headers=headers)

proxy_handler=proxyhandler(proxy)

opener=build_opener(proxy_handler)

response=opener.open(request)

code=response.read().decode()

print(code)

1.匯入相關第三方庫

from urllib.request import request,urlopen,httpcookieprocessor,build_opener2.建立乙個管理cookie的物件並使用獲取到的cookie進行訪問

print(code)關於資料請求就說到這裡吧,學會後爬取靜態資料基本上沒什麼問題了,爬取動態資料之後再說

Python 爬取網頁

先謝郭嘉 以鏈家二手房為例 1.爬取網頁所必須的庫 import urllib.request import ssl 2.獲取預爬網頁資訊 1 網頁url 3.下面就可以爬取網頁了 以鏈家二手房為例 1.爬取網頁所必須的庫 import urllib.request import ssl 2.獲取預...

Python 爬取網頁資訊

對於本次學習爬蟲中的一些總結 1.要熟練掌握基礎知識,包括一些基礎的語法 2.正規表示式的正確使用,建議學習北理工的python爬蟲課程 3.先寫大框架再新增小的功能解析 4.對程式異常處理要熟練,盡量使用try.excep結構 5.對於列表字串資料的基本使用到位,比如增刪改查等 6.思路必須清晰 ...

Python 爬蟲爬取網頁

工具 python 2.7 import urllib import urllib2 defgetpage url 爬去網頁的方法 request urllib.request url 訪問網頁 reponse urllib2.urlopen request 返回網頁 return response...