eBay APIエラー: The element type "br" must be terminated by the matching end-tag </br>
eBay APIで出品しようとしてこんな↓エラーメッセージが出て出品できないとき。
Traceback (most recent call last):
File "/Users/yuki/Desktop/additem.py", line 278, in list_items response = api.execute('AddFixedPriceItem', item_obj).dict()
File "/usr/local/lib/python3.9/site-packages/ebaysdk/connection.py", line 127, in execute self.error_check()
File "/usr/local/lib/python3.9/site-packages/ebaysdk/connection.py", line 223, in error_check
raise ConnectionError(estr, self.response) ebaysdk.exception.ConnectionError: 'AddFixedPriceItem: Class: RequestError, Severity: Error, Code: 5, XML Parse error. XML Error Text: "; nested exception is: \n\torg.xml.sax.SAXParseException; lineNumber: 13; columnNumber: 1195; The element type "br" must be terminated by the matching end-tag "</br>".".'
解決策は、HTMLタグである<br>をエスケープして<br>とします。
ぼくの場合、商品説明(Description)に改行を含めようとしてこのように<br>タグを入れてAPIを叩いていました。
Pythonitem_description = "〜商品説明〜...<br>...<br>..."
これをこのように置換したら無事出品が成功。
Pythonitem_description = "〜商品説明〜...<br>...<br>...".replace("<br>", "<br>")
エラーメッセージを素直に解釈すると「<br>タグは</br>で閉じてください」なので、少し紛らわしかったのでした。