単一ページの PHP 収集プログラムの作成と例の添付を手伝っていただけますか
たとえば、次のページを収集したいと考えています: http://news.163.com/12/0613/20/83TJ7PA700014JB6.html
要件:
コレクションタイトル
テキストを収集
ありがとう!
------解決策---------
まず、http://simplehtmldom.sourceforge にアクセスします。 net/index.htm ([Sourceforge から最新バージョンをダウンロード] をクリック) して、絶対確実な規則性である simple_html_dom.php をダウンロードします。公式 Web サイトには、わかりやすい詳細なチュートリアルもあります。
<br />
header("Content-type: text/html; charset=gb2312");<br />
require dirname(__FILE__) . '/simple_html_dom.php';<br />
$ch = curl_init();<br />
curl_setopt($ch, CURLOPT_URL, 'http://news.163.com/12/0613/20/83TJ7PA700014JB6.html');<br />
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);<br />
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2 GTB5');<br />
$htmls = curl_exec($ch);<br />
curl_close($ch);<br />
$html = str_get_html($htmls);<br />
foreach($html->find('#h1title') as $title){ <br />
echo strip_tags($title).'<br />';//标题<br />
}<br />
foreach($html->find('#endText') as $content){ <br />
echo strip_tags($content);//正文<br />
}
ログイン後にコピー
注:curl は Mozilla ブラウザのクロールをシミュレートし、file_get_contents() よりも高速に解析します。悪質な iframe 広告を削除するには、strip_tags() を使用します。とにかく、必要なのは「タイトルを収集する」ことと「本文を収集する」ことです。冗長な HTML タグは役に立ちません。
------解決策-----------
PHP で QQ メールボックスの友達リストを取得する方法:
この記事では、PHP を使用して QQ メールボックスの友達を取得する方法を紹介します。 PHP には、curl 拡張機能と呼ばれる拡張機能があり、一般にデータを収集するために使用されます。ただし、ログインをシミュレートし、シミュレートされたログインを通じて QQ メールボックスにログインし、curl コレクションを使用してメールボックスの友達リストを取得することもできます。以上が実装原則です。Yuan Li を理解した後、実装プロセスを見ていきます。 QQ メールボックスの友達を取得するための具体的な PHP コードは次のとおりです:
1.
2.class QQHttp {
3. var $cookie = '';
4. 関数 __cunstrut() {
5. }
6. 関数 makeForm() {
7. $form = array(
8. 'url' => "http://mail.qq.com/cgi-bin/loginpage",
9.);
10. $data = $this->curlFunc($form);
11. preg_match('/name="ts"svalue="(d+)"/',$data['html'], $tspre);
12. $ts = $tspre[1]
13. preg_match('/action="http://(md+).mail.qq.com/',$data['html'], $server);
14. $server_no = $server[1]
;
15. /*login.html読み込み中*/
16. $html = file_get_contents(dirname(__FILE__).'/login.htm');
17. $html = str_replace('{_ts_}',$ts, $html);
18. $html = str_replace('{_server_no_}',$server_no, $html);
19. $html を返す
20. }
21. 関数curlFunc($array)
22. {
23. $ch =curl_init()
24.curl_setopt($ch, CURLOPT_URL, $array['url']);