私は、URLを受け取り、深さ優先の検索をいくつかの限られた深さまで行った後、「webcrawler」をPythonで作成しています。私が抱えている問題は、URLの相対パスを解釈することです。URL内の相対パスを解釈する
ページのhttp://learnyouahaskell.com/introduction/には「開始」リンクがあります。 <a href="starting-out" class="nxtlink">Starting Out</a>
のように見えます。このリンクが "http://learnyouahaskell.com/introduction/starting-out"または "http://learnyouahaskell.com/starting-out"を参照しているかどうかをどのように判断できますか? 2番目は私のブラウザによると正しいです。
ページのhttp://math.colgate.edu/~mionescu/math399s11/には、 "http://math.colgate.edu/~mionescu/math399s11/Finalprojects.pdf"に解決されるリンク<a href="Finalprojects.pdf">here</a>
があります。
誰かがこの不一致を私に説明できますか?クローラでこれらのパスをどのように解決するのかを決定するにはどうすればよいですか?
私はそれが完璧な意味を理解します。リンクの解決方法を変更できる他のHTMLタグは存在しますか? – jjoelson
HTMLには直接ではありませんが、JavaScriptを使用してイベントをピックアップしたり、サーバー301/302のリダイレクトを行ったりしています。実際のファイルの場所は、すべてがURIパラメータとして現れるfuseboxなどのフレームワークでは、しばしば難読化されています。 – iivel