Rumah > Soal Jawab > teks badan
伊谢尔伦2017-04-18 09:33:41
Selepas ujian sebenar, kesimpulannya ialah bs4 mengubah susunan atribut.
Elemen Pemeriksaan
Lihat kod sumber halaman web
import re
ptn_tr = re.compile(r'<tr[^>]+>')
import requests as req
rsp=req.get('http://www.pythonscraping.com/pages/page3.html')
html = rsp.text
print('requests:\t', ptn_tr.findall(html)[0])
from urllib.request import urlopen
rsp = urlopen("http://www.pythonscraping.com/pages/page3.html")
html = rsp.read().decode()
print('urlopen:\t', ptn_tr.findall(html)[0])
from bs4 import BeautifulSoup
html = str(BeautifulSoup(html,"lxml"))
print('bs4Soup:\t', ptn_tr.findall(html)[0])
Keputusan:
requests: <tr id="gift1" class="gift">
urlopen: <tr id="gift1" class="gift">
bs4Soup: <tr class="gift" id="gift1">
阿神2017-04-18 09:33:41
Tertib kelas dan id hanyalah berbeza.
Apabila anda menggunakan Chrome dan Firefox untuk melihat kod sumber halaman web yang sama, susunannya juga berbeza.
高洛峰2017-04-18 09:33:41
Adalah disyorkan bahawa penanya menyiarkan tapak web atau pun kodnya sendiri supaya semua orang boleh membantu anda menyahpepijatnya. Ia adalah perkara biasa untuk menjadi berbeza. Jika kandungan yang dirangkak oleh perangkak anda disimpan sebagai halaman statik dan berbeza daripada yang anda lihat dengan penyemak imbas, maka mekanisme anti-perakak pihak lain mesti telah mengenalinya, jadi pelayan akan mengembalikan maklumat yang berbeza. . Terdapat banyak cara untuk mengenal pasti perangkak Jika anda masih mempunyai sebarang soalan, sila tanya
巴扎黑2017-04-18 09:33:41
Poster mengesyorkan agar anda menyiarkan semua kod sumber, kerana tapak web boleh mengenal pasti sama ada anda mengendalikan penyemak imbas manusia atau perangkak.
Melihat kod semasa, adalah disyorkan agar anda menambah maklumat pengepala! use-agent Baris kod itu!