2つのHTMLファイルが似ています。それらをold.htmlとnew.htmlとしましょう。2つのファイル間の特定のHTMLブロックをPythonに置き換えます。
私はnew.htmlを開き、いくつかの処理を行い、htmlのブロックを保存したいだけです。私はちょうど編集してold.htmlの対応するブロックを置き換えます。
new.htmlがどのように見えるのであれば:
<html>
<table>
my content
</table>
</html>
そしてold.htmlは、次のようになります。その後
<html>
<!--other html -->
<table>
old content
</table>
<!-- other html -->
、old.htmlは、次のようになります。
<html>
<!--other html -->
<table>
my content
</table>
<!-- other html -->
I私はこの問題の最初の部分が分かったと思う、私はちょうど実際にファイルを変更する方法を知らない。 私はいくつかのプレースホルダーテキストがうまくいく使用して多分何とかと思ったが、私はまだ私がこれまで持って何old.html
からのコードの元のブロックを交換する方法がわからない:
from bs4 import BeautifulSoup as Soup
from soupselect import select
new_file = "\\path\\to\\new.html"
old_file = "\\path\\to\\old.html"
f = open(new_file, "rb")
soup = Soup(f)
new_table = soup.table
f2 = open(old_file, "rb")
soup2 = Soup(f2)
old_table = soup2.table
#process new_table here
#how do i replace old_table with new_table?
f.close()
f2.close()
ありがとうございます!ありがたいことに、私が扱っているファイルは、1つのテーブルだけを含むことが保証されているので、これはうまくいきます。私は正規表現の使用を考慮しませんでした。私はいくつかの重労働をするためにBeautifulSoupのような図書館が必要だと思っていました。 – marc
それはあなたのために働いてうれしい。甘い!私の最初に受け入れられた答え! – b10hazard