1

単純な php クローラー スクリプトを変更しています。

使用するモジュールの 1 つは、相対 URL から絶対 URL へのコンバーターです。

そのためには、特定の URL のベース href を特定する方法を見つける必要があります。そうしないと、間違って変換されたリンクがたくさんできてしまいます。

URL に base href タグがあるかどうかを確認し、ある場合はそれを返す単純な関数が必要です。

ありがとう

4

3 に答える 3

0

parse_url()URL をその部分に分割します。そこから必要なものを得ることができます。

于 2012-04-03T10:15:42.347 に答える
0

正確な意味はわかりませんが、parse_urlは、ホスト名、クエリ文字列などの多くの情報を提供します。

私があなたのことを正しく理解していれば、URL に http が含まれているかどうか知りたくありません。parse_url が返す情報のスキーム部分は、ここであなたの友達です。スキームが空であるか、http とは異なる場合は、URL に http が含まれていないことがわかります。

クローラー内で特定のページのクロールを開始し、質問が正しいと理解できれば、その HTML を解析します。parse_url が提供する情報からベース URL (パスなし) を作成するだけで問題はありません。

于 2012-04-03T10:16:16.053 に答える
0

URL に base href タグがあるかどうかを確認し、ある場合はそれを返す単純な関数が必要です。

HTML タグであるため、URL に base href タグを含めることはできません。その URL から取得する HTML で定義されている場合があります。それを読む方法は、この質問にあります。

于 2012-04-03T10:17:59.193 に答える