Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Amalan operasi skrip PHP Linux: panduan pembangunan perangkak web

Amalan operasi skrip PHP Linux: panduan pembangunan perangkak web

WBOY
WBOYasal
2023-10-05 09:57:30731semak imbas

PHP Linux脚本操作实战:网络爬虫开发指南

Amalan Pengendalian Skrip Linux PHP: Panduan Pembangunan Perayap Web

Pengenalan:
Dengan perkembangan pesat Internet, maklumat telah meletup, dan permintaan orang ramai terhadap maklumat juga meningkat. Sebagai alat automatik, perangkak web boleh membantu kami mendapatkan maklumat yang diperlukan daripada Internet dengan cepat dan cekap, dan telah menerima perhatian dan aplikasi yang meluas. Artikel ini akan memperkenalkan cara menggunakan operasi skrip PHP dan Linux untuk membangunkan perangkak web, dan menyediakan contoh kod khusus untuk membantu pembaca memulakan dengan cepat dengan pembangunan perangkak web.

1. Penyediaan persekitaran:
Sebelum memulakan pembangunan web crawler, kita perlu menyediakan persekitaran berikut:

  1. Pelayan dengan sistem pengendalian Linux
  2. persekitaran PHP, anda boleh memasukkan "php dalam terminal - v" untuk melihat sama ada ia dipasang. Jika ia tidak dipasang, anda boleh memasangnya melalui "apt-get install php"
  3. Untuk memasang sambungan curl, anda boleh memasangnya melalui "apt-get install php-curl"
  4. Untuk memasang alat wget, anda boleh memasangnya melalui "apt-get install wget " untuk memasang.

2. Merangkak kandungan halaman web:
Untuk membangunkan perangkak web, tugas paling asas ialah mendapatkan kandungan daripada halaman web tertentu. Berikut ialah contoh mudah untuk mendapatkan kandungan halaman web tertentu melalui sambungan curl PHP:

<?php
// 创建一个curl句柄
$ch = curl_init();

// 设置curl的参数
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

// 执行请求并获取返回的内容
$result = curl_exec($ch);

// 关闭curl句柄
curl_close($ch);

// 输出获取到的内容
echo $result;
?>

Dalam kod di atas, mula-mula gunakan fungsi curl_init() untuk mencipta pemegang curl, dan kemudian gunakan fungsi curl_setopt() untuk tetapkan halaman web yang perlu diakses Format alamat dan kandungan kembali, akhirnya gunakan fungsi curl_exec() untuk melaksanakan permintaan dan mendapatkan kandungan yang dikembalikan, dan akhirnya gunakan fungsi curl_close() untuk menutup pemegang curl. Akhir sekali, kandungan yang diperoleh adalah output melalui pernyataan gema.

3. Menghuraikan kandungan halaman web:
Mendapatkan kandungan halaman web hanyalah langkah pertama Seterusnya, kami perlu mengekstrak data yang kami perlukan. Biasanya, kami boleh menggunakan ungkapan biasa untuk mengekstrak data Berikut ialah contoh mudah:

<?php
// 获取网页内容
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);

// 使用正则表达式提取标题
preg_match("/<title>(.*?)</title>/", $result, $matches);
$title = $matches[1];

// 使用正则表达式提取正文内容
preg_match("/<div class="content">(.*?)</div>/", $result, $matches);
$content = $matches[1];

// 输出提取到的标题和正文内容
echo "标题:".$title."
";
echo "正文内容:".$content."
";
?>

Dalam kod di atas, kami menggunakan curl untuk mendapatkan kandungan halaman web, dan mengekstrak tajuk dan kandungan melalui ekspresi biasa. Akhirnya, data yang diekstrak dikeluarkan melalui pernyataan gema.

4. Menyimpan data:
Selepas mendapatkan data, kami biasanya menyimpannya ke pangkalan data atau fail untuk analisis dan penggunaan seterusnya. Berikut ialah contoh menyimpan data yang dirangkak ke fail:

<?php
// 获取网页内容
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);

// 使用正则表达式提取标题
preg_match("/<title>(.*?)</title>/", $result, $matches);
$title = $matches[1];

// 使用正则表达式提取正文内容
preg_match("/<div class="content">(.*?)</div>/", $result, $matches);
$content = $matches[1];

// 将数据保存到文件中
$file = fopen("data.txt", "w");
fwrite($file, "标题:".$title."
");
fwrite($file, "正文内容:".$content."
");
fclose($file);

echo "数据已保存到文件 data.txt 中
";
?>

Dalam kod di atas, kami mencipta fail bernama data.txt dan menulis data yang diekstrak ke fail melalui fungsi fwrite() , dan akhirnya menutup fail melalui fungsi fclose(). Akhirnya, gesaan penjimatan yang berjaya dikeluarkan melalui pernyataan gema.

Ringkasan:
Melalui pengenalan artikel ini, kami mempelajari cara menggunakan skrip PHP dan Linux untuk membangunkan perangkak web. Mula-mula, kami belajar cara menggunakan sambungan curl untuk mendapatkan kandungan halaman web yang ditentukan kemudian, kami belajar menggunakan ungkapan biasa untuk mengekstrak data yang diperlukan daripada kandungan halaman web, akhirnya, kami belajar cara menyimpan data yang dirangkak ke a tengah fail. Saya percaya bahawa melalui amalan kod sampel ini, pembaca boleh menguasai kemahiran pembangunan perangkak web asas dan pembelajaran serta penerokaan yang lebih mendalam.

Atas ialah kandungan terperinci Amalan operasi skrip PHP Linux: panduan pembangunan perangkak web. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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