質問: table[0].find_all("tr") ↑ここからどうCSVにすればいいかが不明
回答: Beautifulsoupはそんなにタグの破損に強くないので、限界はあると思います。 タグが破損している場合の処理については、ブラウザ側の対応が神すぎて上手く表示処理されてしまっており、サイト運営者が気づかないまま公開されて続けています。コード品質が低い原因の一つだと思っています。 それはさておき、最近はHTMLパーサの動作について共通の規格が策定されつつあり、近代的なパーサであればブラウザと同等の処理ができるように進化しています。 残念ながらBeautifulsoupは古いツールでそのへんは加味していない。。ということなのだと思います。 javascriptだと https://github.com/fb55/htmlparser2 などは有名なのかな? 最近だとpythonよりもNode系、javascriptのライブラリのほうが高機能になっていると思います。 最近のpythonのライブラリはよく知りませんが、新しいものを探してみると良いかもしれません。