网页爬虫 - Python爬虫如何正确判断页面是否可以爬取?
ringa_lee
ringa_lee 2017-04-18 10:24:44
0
3
1372

用Python27些爬虫,想要爬取一些网站,我需要判断网页是否可以爬取,第一反应是通过状态码来判断,但是写完运行后发现有许多目标网站访问它不存在的页面时会返回一个404错误页面,可他的状态码却是200,结果爬回来好多根本就不存在的页面。这个本来是网站设置的问题,但是现在也不能用状态码来判断了,请问还有什么方法可以正确判断一个页面是不是404该不该爬?

ringa_lee
ringa_lee

ringa_lee

membalas semua(3)
阿神

Pertama sekali, kod status 200 ialah status sambungan rangkaian, jadi anda hanya menilai 200 dan ia tidak memenuhi semua tapak web.

Kedua, semasa menulis perangkak, anda sebenarnya harus melihat apakah peraturan tapak web ini. Anda boleh membuat pertimbangan manual terlebih dahulu dan mencari corak, seperti menyemak sama ada kandungan yang dikembalikan oleh halaman web mempunyai sebarang ciri.

黄舟

Buat pertimbangan tentang kandungan halaman web, dan kembalikan terus jika tiada kandungan dalam halaman web.

刘奇

Walaupun kod status halaman ialah 200, halaman 404 yang dikembalikan harus mempunyai elemen html yang berbeza daripada html halaman yang biasa dirangkak Anda juga boleh menilai sama ada ia adalah halaman 404 berdasarkan sama ada terdapat elemen html khusus

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan