2

WordPress から Python ベースの CMS である Plone にコンテンツをインポートする必要があり、";" を使用して巨大な CSV バニラ ファイルとして posts テーブルのダンプを取得しています。区切り文字として。

問題は、 csv モジュールの標準の CSV リーダーが、行 (post_contentフィールド)内の HTML コンテンツを解析するほど賢くないことです。

たとえば、パーサーが<p>&nbsp;</p>セミコロンをフィールド区切り文字として解釈するようなものに遭遇した場合、フィールドよりも多くの項目があり、間違った内容のフィールドになってしまいます。

この種の問題を解決する他のオプションはありますか? 正規表現で行を処理することは、私にはかなり怖いようです。

4

3 に答える 3

1

小規模なサイトの場合は、WordPress XML-RPC API への Python インターフェイスである pywordpressを使用することもできます。

于 2015-07-17T13:09:46.270 に答える
1

CSV モジュールは、escapechar(セミコロンに設定した) 区切り文字をエスケープできる format パラメータを提供します。escapechar='\\'への呼び出しで指定できる場合は、CSV ファイル内csv.reader()の文字をに置き換え、(テキスト エディタの検索/置換オプションを使用して) に置き換えることができます。\\\&nbsp;&nbsp\;

于 2015-07-16T01:02:25.853 に答える