Ja bieži ienesat datus no vietnēm, iespējams, apsveriet šī procesa automatizāciju. Dažkārt dēvēts par “tīmekļa nokopšanu”, process ir izplatīts vietnēs, kurās netiek nodrošināta oficiāla API vai plūsma. Protams, jūs nekur netiksit, ja vietne, kuru mēģināt ienest, nebūs pieejama.

Ja pārvaldāt savu vietni, jums, iespējams, iepriekš ir nācies saskarties ar dīkstāvi. Tas var būt apgrūtinoši, liekot jums zaudēt apmeklētājus un pārtraukt visas darbības, par kurām jūsu vietne varētu būt atbildīga. Šādos apstākļos ir lietderīgi viegli pārbaudīt savas vietnes pieejamību.

Python ir lieliska skriptu valoda, un tās kodolīgā, taču lasāmā sintakse padara vietnes pārbaudītāja ieviešanu vienkāršu uzdevumu.

Personalizētās vietnes pārbaudītāja izveide

Vietņu pārbaudītājs ir īpaši izveidots, lai vienlaikus pielāgotu vairākas vietnes. Tādējādi varat viegli izslēgt vietnes, kas jums vairs nav svarīgas, vai sākt pārbaudīt vietnes, kuras palaižat nākotnē. Pārbaudītāja ir ideāla “skeleta lietotne”, uz kuras jūs varētu turpināt darbu, taču tā parāda pamata pieeju tīmekļa datu iegūšanai.

Importējiet bibliotēkas programmā Python

Lai sāktu projektu, jums ir jāimportē pieprasījumus Python bibliotēka ar imports funkciju.

imports pieprasījumus

Pieprasījumu bibliotēka ir noderīga saziņai ar vietnēm. Varat to izmantot, lai nosūtītu HTTP pieprasījumus un saņemtu atbildes datus.

Saglabājiet vietņu URL sarakstā

Kad esat importējis bibliotēku, jums ir jādefinē un jāsaglabā vietņu URL sarakstā. Šī darbība ļauj saglabāt vairākus URL, kurus varat pārbaudīt, izmantojot vietnes pārbaudītāju.

imports pieprasījumus

website_url = [
" https://www.google.co.iekšā",
" https://www.yahoo.com",
" https://www.amazon.co.iekšā",
" https://www.pipsnacks.com/404",
" http://the-internet.herokuapp.com/status_codes/301",
" http://the-internet.herokuapp.com/status_codes/500"
]

Mainīgais mājaslapas URL saglabā URL sarakstu. Sarakstā definējiet katru URL, kuru vēlaties pārbaudīt kā atsevišķu virkni. Testēšanai varat izmantot kodā ietvertos URL piemērus vai arī tos aizstāt, lai nekavējoties sāktu pārbaudīt savas vietnes.

Pēc tam saglabājiet ziņojumus kopīgai lietošanai HTTP atbildes kodi. Varat tos saglabāt vārdnīcā un indeksēt katru ziņojumu ar atbilstošo statusa kodu. Pēc tam jūsu programma var izmantot šos ziņojumus statusa kodu vietā, lai nodrošinātu labāku lasāmību.

statusi = {
200: "Pieejama vietne",
301: "Pastāvīgā novirzīšana",
302: "Pagaidu novirzīšana",
404: "Nav atrasts",
500: "Iekšējā servera kļūda",
503: "Pakalpojums nav pieejams"
}

Cikla izveide vietnes statusa pārbaudei

Lai pārbaudītu katru URL pēc kārtas, vēlēsities pārlūkojiet sarakstu no tīmekļa vietnēm. Ciklā pārbaudiet katras vietnes statusu, nosūtot pieprasījumu, izmantojot pieprasījumu bibliotēku.

priekš url iekšā mājaslapas URL:
mēģināt:
web_response = requests.get (url)
drukāt (url, statuses[web_response.status_code])

izņemot:
drukāt (url, statuses[web_response.status_code])

Kur:

  • par url...atkārtojas URL sarakstā.
  • url ir mainīgais, kuram for cilpa piešķir katru URL.
  • mēģināt/izņemotapstrādā visus izņēmumus kas var rasties.
  • web_response ir mainīgais, kas nodrošina rekvizītu ar atbildes statusa kodu

Viss koda fragments

Ja vēlaties pārskatīt visu kodu vienā reizē, šeit ir pilns kodu saraksts.

imports pieprasījumus

website_url = [
" https://www.google.co.iekšā",
" https://www.yahoo.com",
" https://www.amazon.co.iekšā",
" https://www.pipsnacks.com/404",
" http://the-internet.herokuapp.com/status_codes/301",
" http://the-internet.herokuapp.com/status_codes/500"
]

statusi = {
200: "Pieejama vietne",
301: "Pastāvīgā novirzīšana",
302: "Pagaidu novirzīšana",
404: "Nav atrasts",
500: "Iekšējā servera kļūda",
503: "Pakalpojums nav pieejams"
}

priekš url iekšā mājaslapas URL:
mēģināt:
web_response = requests.get (url)
drukāt (url, statuses[web_response.status_code])

izņemot:
drukāt (url, statuses[web_response.status_code])

Un šeit ir koda izpildes piemērs:

Python kodēšanas iespējas tīmekļa skrāpēšanā

Python trešo pušu bibliotēkas ir ideāli piemērotas tādiem uzdevumiem kā tīmekļa skrāpēšana un datu ielāde, izmantojot HTTP.

Varat nosūtīt automatizētus pieprasījumus vietnēm, lai veiktu dažāda veida uzdevumus. Tie var ietvert ziņu virsrakstu lasīšanu, attēlu lejupielādi un automātisku e-pasta ziņojumu sūtīšanu.