Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana Memalsukan Lawatan Pelayar dengan Perpustakaan Permintaan Python?

Bagaimana Memalsukan Lawatan Pelayar dengan Perpustakaan Permintaan Python?

Patricia Arquette
Lepaskan: 2024-11-11 22:09:03
asal
191 orang telah melayarinya

How to Fake a Browser Visit with Python's Requests Library?

Cara Memalsukan Lawatan Pelayar dengan Perpustakaan Permintaan Python

Apabila mengakses tapak web secara pemprograman menggunakan alat seperti pakej Permintaan Python atau arahan wget, anda mungkin menghadapi perbezaan dalam kandungan HTML yang diperoleh semula berbanding semasa melawati tapak web melalui pelayar web. Percanggahan ini berpunca daripada fakta bahawa tapak web sering menggunakan mekanisme untuk membezakan antara lawatan penyemak imbas tulen dan permintaan automatik.

Satu pendekatan berkesan untuk mengatasi cabaran ini ialah mensimulasikan lawatan penyemak imbas yang sah dengan menyediakan pengepala "Ejen Pengguna" dalam permintaan anda. Pengepala ini mengandungi maklumat tentang penyemak imbas dan versi tertentu yang digunakan, yang membantu tapak web mengenal pastinya sebagai lawatan yang dimulakan oleh manusia.

Untuk melaksanakan penyelesaian ini menggunakan perpustakaan Permintaan Python, ikut langkah berikut:

  1. Import modul permintaan.
  2. Tentukan URL tapak web yang ingin anda akses.
  3. Buat kamus pengepala dengan pasangan nilai kunci berikut: 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, seperti Gecko) Chrome/39.0.2171.95 Safari/537.36'. Ini ialah contoh rentetan Ejen Pengguna biasa untuk Google Chrome.
  4. Gunakan kaedah requests.get() untuk menghantar permintaan GET ke tapak web, menghantar kamus pengepala sebagai hujah.
  5. Objek tindak balas mengandungi kandungan HTML, yang boleh diakses menggunakan .kandungan.

Kod contoh:

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)
Salin selepas log masuk

Untuk rujukan, senarai lengkap Ejen Pengguna rentetan untuk penyemak imbas berbeza tersedia di sini:

[Senarai semua Penyemak Imbas](https://deviceatlas.com/blog/list-of-user-agent-strings)

Sebagai alternatif, anda boleh menggunakan pakej pihak ketiga ejen pengguna palsu, yang memudahkan proses menjana rentetan Ejen Pengguna yang realistik. Berikut ialah demonstrasi penggunaannya:

from fake_useragent import UserAgent

ua = UserAgent()
request_headers = {'User-Agent': ua.chrome}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana Memalsukan Lawatan Pelayar dengan Perpustakaan Permintaan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan