私はPythonを使ってYAMLファイルを解析しています。python、yamlアポストロフィを含む文字列を解析する方法
YAML文書の一つは、次のように辞書が含まれています。最後にアポストロフィが空白が先行しているため
scrapers:
results: //article[@class='story ']
この明らかな問題が発生します。空白を取り除くことができれば問題は解決します。しかし、それはxpathなので、私はできません。
どのように私はそのシーケンスをエスケープできるか知っていますか? は、私は他のSO質問に見えたが、
scrapers:
results: //article[@class='story ']
または
scrapers:>
results: //article[@class='story ']
または
scrapers:
results: //article[@class='story '']
を使用して "" 内の文字列、または を包むようなソリューションが動作しませんでした。
EDIT: ScannerError::私はエラーが表示さしかし
import yaml
with open('/home/depot/wintergreen/yaml/scrapers.yml', 'r') as f:
scrapers = yaml.load(f)
:マッピング値は空白を指し、ここで
許可されていない私は上記の式を含むファイルを開くしようとしています story
以降。 以下の回答者から提供された提案、つまりpython dictからyaml式を作成しようとしています。これは機能します。私はyamlをファイルに保存し、再びロードします。それはまた動作します。 私はまったく同じ文字を入力して、YAMLを作成するときしかし、それは動作しません...
はEDIT2: 私は、問題は、私は窓マシン上のYAMLファイルを作成し、それをアップロードしているという事実から生じ考えますUNIXサーバー上で実行します。
これに問題があるコードはどこにありますか?どのライブラリを使用していますか?あるいは正規表現でYAMLを解析しようとしていますか? (あなたはしないでください) – Anthon