特定のURLのみを取得することはできますか?Python BeautifulSoup特定のURLを抽出する
同様:
<a href="http://www.iwashere.com/washere.html">next</a>
<span class="class">...</span>
<a href="http://www.heelo.com/hello.html">next</a>
<span class="class">...</span>
<a href="http://www.iwashere.com/wasnot.html">next</a>
<span class="class">...</span>
出力はhttp://www.iwashere.com/
からの出力のURLのようなURLのみでなければなりません:
http://www.iwashere.com/washere.html
http://www.iwashere.com/wasnot.html
私は、文字列のロジックでそれをやりました。 BeautifulSoupを使って直接的な方法はありますか?
それは完全に働きました。図書館を知らない人のために。あなたは から 'bs4をインポートする必要がありますBeautifulSoup import re' – Zero
私はもう一つ質問があります。 「http://www.iwashere.com/xyz ... abc.html」形式のリンクを完全に抽出することができます。しかし、リンクがローカルの場合。たとえば、[next、next]のように言ってください。基礎となるリンクをどのように抽出できますか? HTMLコードが見られると、リンクは適切な場所にハイパーリンクされます。そのようなリンクを抽出する方法はありますか? – Zero
@searcoding:スキームや二重スラッシュで始まらないものと一致する必要があります。 *で始まらない* hrefの値は相対URLです。 *:():)) ')'(これは負の値です) 'href = re.compile(r '^(?!(?:[a-zA-Z] [a-zA-Z0-9 + .-] *:スキームや二重スラッシュをテストするためのルックアヘッド、それ以外のものはマッチしません)。 –