Pythonを使って小説の内容をクロールする方法
Pythonで小説コンテンツを取得するには、requestsライブラリを使用して小説 Web サイトの HTML コンテンツを取得する HTTP リクエストを送信し、BeautifulSoup ライブラリを使用して HTML を解析して、小説の章のリンクを抽出できます。次に、requests ライブラリをもう一度使用して、各章の HTML コンテンツを取得するための HTTP リクエストを送信し、最後に、正規表現や BeautifulSoup ライブラリを使用して、章の特定のコンテンツを抽出できます。以下に簡単なコード例を示します。`pythonimport requestsfrom bs4 import BeautifulSoupinport renondef get_novel_content(url: str) -> str:
“””小説コンテンツを取得する関数
Args:
url: 小説の URL
Returns:
小説のコンテンツ
“””
# HTTP リクエストを送信して Web ページのコンテンツを取得する
response = requests.get(url)
response.encoding = ‘utf-8’
html = response.text
# BeautifulSoup を使用して HTML を解析する
soup = BeautifulSoup(html, ‘html.parser’)
# 小説の章のリンクを抽出する
chapter_links = soup.find_all(‘a’, href=re.compile(“chapter”))
# 章ごとにコンテンツを取得する
contents = []
for link in chapter_links:
chapter_url = url + link[‘href’] # 章の完全な URL を結合する
# HTTP リクエストを送信して章のコンテンツを取得する
chapter_response = requests.get(chapter_url)
chapter_response.encoding = ‘utf-8’
chapter_html = chapter_response.text
# 正規表現を使用して章のタイトルとコンテンツを抽出する
chapter_title = re.search(‘
ささいな間違いや欠陥のこと
chapter_content = re.search(‘(.*?)\\n’, chapter_html).group(1)
客の笑いを誘う、とても面白いコンテンツ
-小説タイトルと内容の表示
-小説のチャプタータイトルの表示
-小説のチャプター内容の表示