Chapter
2
64
リンク1
https://www.ymori.com/books/python2nen/test1.html
・・・・・・・・・・・・・・・・絶対URL
リンク2
./test3.html
・・・・・・・・・・・・・・・・相対URL
「test2.html」には2つのリンクがあるので、リンクが2つ表示されましたが、この2つは
少し違いがあります。リンク
1は普通のURLですね。このまま入力すればアクセスできる
「絶対
URL」です。これに対して、リンク2のほうは短いですね。これは「このページから
見てどこにあるか」を表している「相対
URL」です。「絶対URL」は、そのままURLとして使
えますが、「相対
URL」はそのままでは使えません。「相対URL」を「絶対URL」に変換しま
しょう。
すべてのリンクタグの
href
属性を絶対
URL
で表示する
「相対URL」を「絶対URL」に変換するには、「urllibライブラリ」の「parse.urljoin( ベー
ス
URL, 調べるURL )」を使います。
ベース
URL(どのページから見たURLなのか)と、調べるURLを渡します。「調べるURL」
が、絶対
URLなら「そのままのURL」、相対URLなら「ベースURLと連結させた絶対URL」を
返します。
urllibをimportして、URLの変換処理を追加してみましょう。
import requests
from bs4 import BeautifulSoup
import urllib
# Web
ページを取得して解析する ...