Semalt: PHP web sahypasyny döwmek üçin 3 ädim

Web maglumatlary ýygnamak ýa-da web hasylyny almak hem web sahypasyndan ýa-da blogdan maglumat almak prosesi. Soňra bu maglumatlar meta belliklerini, meta düşündirişlerini, açar sözleri we bir sahypa baglanyşyklary kesgitlemek, gözleg motorynyň netijelerinde umumy işleýşini gowulandyrmak üçin ulanylýar.

Maglumatlary gyrmak üçin iki esasy usul ulanylýar:

  • Resminamalary derňemek - DOM (Resminamanyň obýekt modeli) faýllaryna öwrülen XML ýa-da HTML resminamasyny öz içine alýar. PHP bize ajaýyp DOM giňeltmesini hödürleýär.
  • Yzygiderli aňlatmalar - Web resminamalaryndan maglumatlary yzygiderli aňlatma görnüşinde ýok etmegiň usuly.

Üçünji tarap web sahypasynyň gyrylan maglumatlary bilen baglanyşykly mesele, awtorlyk hukugy bilen baglanyşykly, sebäbi bu maglumatlary ulanmaga rugsadyňyz ýok. PHöne PHP bilen, awtorlyk hukugy ýa-da pes hili bilen baglanyşykly kynçylyksyz maglumatlary aňsatlyk bilen döwüp bilersiňiz. PHP programmisti hökmünde kodlaşdyrmak maksady bilen dürli web sahypalaryndan maglumat gerek bolup biler. Bu ýerde beýleki saýtlardan maglumatlary nädip netijeli almalydygyny düşündirdik, ýöne ondan ozal ahyrynda index.php ýa-da scrape.js faýllaryny aljakdygyňyzy ýadyňyzdan çykarmaly dälsiňiz.

1-nji ädim: Sahypanyň URL-sine girmek üçin forma dörediň:

Ilki bilen, “Submit” düwmesine basyp, index.php-de forma döretmeli we maglumatlary döwmek üçin web sahypasynyň URL-sini girizmeli.

<form method = "post" name = "scrape_form" id = "scrap_form" acti>

Maglumatlary döwmek üçin web sahypasyny giriziň

<giriş görnüşi = "giriş" name = "website_url" id = "website_url">

<giriş görnüşi = "tabşyr" name = "tabşyr" baha = "Iber">

</form>

2-nji ädim: Sahypa maglumatlary almak üçin PHP funksiýasyny dörediň:

Ikinji ädim, scrape.php faýlynda PHP funksiýalaryny döretmekdir, sebäbi bu maglumatlary almaga we URL kitaphanasyny ulanmaga kömek eder. Şeýle hem, dürli serwerler we protokollar bilen hiç hili mesele bolmazdan birleşmäge we habarlaşmaga mümkinçilik berer.

scrapeSiteData ($ web_url) funksiýasy {

if (! function_exists ('curl_init')) {

öl ('cURL gurulmady. Guruň we gaýtadan synanyşyň.');

}

$ curl = curl_init ();

curl_setopt ($ curl, CURLOPT_URL, $ web_url);

curl_setopt ($ curl, CURLOPT_RETURNTRANSFER, dogry);

$ çykyş = curl_exec ($ curl);

curl_close ($ curl);

$ çykyş;

}

Bu ýerde, PHP cURL-yň dogry gurlandygyny ýa-da ýokdugyny görüp bileris. Funksiýa meýdanynda üç sany esasy CURL ulanylmaly we curl_init () seanslary başlamaga kömek eder, curl_exec () ony ýerine ýetirer we curl_close () baglanyşygy ýapmaga kömek eder. CURLOPT_URL ýaly üýtgeýjiler, gyrylmaly web sahypasynyň URL-lerini düzmek üçin ulanylýar. Ikinji CURLOPT_RETURNTRANSFER, gyrylan sahypalary deslapky görnüşinde däl-de, üýtgeýän görnüşde saklamaga kömek eder, netijede tutuş web sahypasyny görkezer.

3-nji ädim: Sahypadan anyk maglumatlary gyryň:

PHP faýlyňyzyň işleýşini dolandyrmagyň we web sahypaňyzyň aýratyn bölümini gyrmagyň wagty geldi. Belli bir URL-den ähli maglumatlary islemeýän bolsaňyz, CURLOPT_RETURNTRANSFER üýtgeýjilerini ulanyp redaktirlemeli we döwmek isleýän bölümleriňizi görkezmeli.

eger (emet ($ _ POST ['tabşyr'])) {

$ html = scrapeWebsiteData ($ _ POST ['web_url']);

$ start_point = strpos ($ html, 'Iň soňky habarlar');

$ end_point = strpos ($ html, '', $ start_point);

$ uzynlyk = $ end_point- $ start_point;

$ html = substr ($ html, $ start_point, $ uzynlyk);

echo $ html;

}

Bu kodlaryň haýsydyr birini ulanmazdan ýa-da şahsy maksatlar üçin belli bir blogy ýa-da web sahypasyny gyrmazdan ozal, PHP we Adaty aňlatmalar barada esasy bilimleri ösdürmegi maslahat berýäris.