ホームページ >バックエンド開発 >Python チュートリアル >美しいスープでPythonでWebページを削る:検索とDOMの変更

美しいスープでPythonでWebページを削る:検索とDOMの変更

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌オリジナル
2025-03-08 10:36:11667ブラウズ

Scraping Webpages in Python With Beautiful Soup: Search and DOM Modification

このチュートリアルは、シンプルなツリーナビゲーションを超えたDOM操作に焦点を当てた、美しいスープの以前の紹介に基づいています。 HTML構造を変更するための効率的な検索方法とテクニックを探ります。

1つの一般的なDOM検索方法は

です。この方法は、元の注文を保持している要素のリストをタグに追加します。ただし、単に

で拡張すると、適切なHTMLタグではなく、要素が文字列として追加される可能性があります。 extend() extend()上記の例は、この文字列ベースの追加を示しています。 適切なHTMLタグとして要素を追加するには、

メソッドを使用します。逆に、コンテンツを保存しながら
import requests
from bs4 import BeautifulSoup

req = requests.get('https://en.wikipedia.org/wiki/Python_(programming_language)')
soup = BeautifulSoup(req.text, "lxml")

new_soup = BeautifulSoup("<ol></ol>", "lxml")

new_soup.ol.extend(['
  • ' + heading.text + '
  • ' for heading in soup.find_all('h2')]) print(new_soup.ol.contents) print(new_soup.find_all('li'))メソッドはタグを削除します。大胆で斜体タグを削除する例で説明しましょう:

    wrap() unwrap()ここで、

    不要なタグを削除します。 タグを削除した後、テキストフラグメントは
    soup = BeautifulSoup("<p>We will <i>try</i> to get rid of <b>tags</b> that make text <b>bold</b> or <i>italic</i>. The content <i>within</i> the <b>tags</b> should still be <b>preserved</b>.</p>", "lxml")
    
    for unwanted_tag in soup.find_all(["b", "i"]):
        unwanted_tag.unwrap()
    
    print(soup.p.contents)
    soup.p.smooth()
    print(soup.p.contents)
    として保存されていることに注意してください。

    メソッドは、これらの文字列を単一の文字列に連結して、出力を簡素化します。 unwrap()NavigableStrings結論smooth()

    これらのチュートリアルは、美しいスープでウェブスクレイピングの基盤を提供します。 Webページを解析し、データを抽出し、HTML構造を変更し、結果をローカルに保存する方法を学びました。 これにより、さまざまなアプリケーションのWebコンテンツを効果的に処理および操作することができます。

    以上が美しいスープでPythonでWebページを削る:検索とDOMの変更の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。