Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mengatasi Sekatan Laman Web Menggunakan Permintaan Python dan Ejen Pengguna?

Bagaimana untuk Mengatasi Sekatan Laman Web Menggunakan Permintaan Python dan Ejen Pengguna?

Susan Sarandon
Susan Sarandonasal
2024-11-15 08:48:02857semak imbas

How to Overcome Website Blocks Using Python's Requests and User Agents?

Memalsukan Lawatan Pelayar dengan Permintaan Python dan Ejen Pengguna: Penyelesaian untuk Sekatan Laman Web

Apabila mengakses tapak web menggunakan pakej Permintaan Python, anda mungkin menghadapi situasi di mana kandungan HTML yang diperolehi berbeza dengan ketara daripada yang dipaparkan dalam penyemak imbas. Ini selalunya disebabkan tapak web menggunakan sekatan yang mengenal pasti dan menyekat akses untuk bukan penyemak imbas.

Untuk mengatasinya, anda boleh mensimulasikan lawatan penyemak imbas dengan menyediakan pengepala Ejen Pengguna, yang mengenal pasti jenis penyemak imbas dan pengendalian sistem yang digunakan. Ini membolehkan tapak web untuk mempercayai bahawa ia adalah lawatan penyemak imbas yang bona fide, memberikan akses kepada kandungan yang diingini. Begini cara anda boleh melakukannya dengan Permintaan:

import requests

url = 'http://www.ichangtou.com/#company:data_000008.html'
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}

response = requests.get(url, headers=headers)
print(response.content)

Sebagai alternatif, pakej ejen pengguna palsu menyediakan cara yang mudah untuk menjana dan menggunakan ejen pengguna untuk pelayar yang berbeza:

from fake_useragent import UserAgent
ua = UserAgent()
random_ua = ua.random
headers = {'User-Agent': random_ua}
response = requests.get(url, headers=headers)

Dengan menggunakan teknik ini untuk memalsukan lawatan pelayar, anda boleh berjaya mengakses tapak web yang sebelum ini menyekat percubaan berasaskan Python anda.

Atas ialah kandungan terperinci Bagaimana untuk Mengatasi Sekatan Laman Web Menggunakan Permintaan Python dan Ejen Pengguna?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn