>データサイエンスWikipediaデータをxml2sqlを利用しMySQLにぶっこむ2017年1月27日Wikipediaではクロールを禁止している代わりに、全データがXML形式で公開されています。簡単に手に入るのですが、XMLデータのままでは扱いにくいです。今回は、XMLデータをSQLに変換し、最終的にMySQLに入れる方法をご紹介します!Wikipediaコーパスってどう入手するの?Wikipediaのコンテンツデータは、http://dumps.wikimedia.org/にて公開されています。(詳しくは、こちらを参照してください)上記サイトは、英語版のWikipediaデータで、日本語版はhttp://dumps.wikimedia.org/jawiki/においてあります。Wikipediaではクローラを禁止している代わりに、全データがXML形式で公開されています。Wikipediaサイトで入手できるデータはXML形式なため、扱いしやすくするためMySQLに突っ込もうとしたのですが、つまづいたためそのときの備忘録です。WikipediaのXMLデータ取得wgetを叩くなりダウンロードするなりなんなりで、http://dumps.wikimedia.org/jawiki/latest/jawiki-latest-pages-articles.xml.bz2を取得します。このファイルは、Wikipediaの記事データの最新の全ファイルで、圧縮時で2.01GB(2014.10.30日現在)あります。以下のコマンドで、このファイルを解答します。jawiki-latest-pages-articles.xml.bz2xml2sqlのインストールxmlからsqlへ変換してくれるツールがあります。http://meta.wikimedia.org/wiki/Data_dumps/xml2sqlこのサイトから、xml2sql-0.5.tar.gzを落として、makeしてインストールします。/usr/local/bin/実際に変換xml2sqlを実際に実行しようとしたのですが、以下のエラーが発生。zabbiたんAMIたんを参考に、以下のコマンドを実行。エラーになっているところを取り除いています。xml2sqlしかし、これでもうまくいかず。エラー部分を1つずつ潰して最終的に以下のコマンドになりました。text.txtという3つのファイルが生成されます。xml2sqlで変換したデータをMySQLにつっこむ前準備として、専用のテーブルを作成する必要があります。http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/maintenance/tables.sql?view=markup上記ページから、table.sqlを落としてMySQLに入れます。revision.txtを実行すると完了します。Wikipedia全ページとあって、結構重たいですが気長に待ちましょう。コメントをキャンセルメールアドレスが公開されることはありません。PandasでDataFrame型をコピーする際はシャローとディープの違いに注意PandasでDataFrame型をコピーしたい時には注意が必要。具体的には、新しい変数へ代入するだけだと参照コピーになり、もとのDataFrameの値が変わると代入先の値も変わってしまう。PandasでDataFrameを操る魔術をまとめてみたPandasを使うとPythonでデータをテーブルみたいに扱えるようになる。前回の記事にて、Wikipediaの全記事をMySQLにぶっこみました。あるカテゴリにおける全記事を取得したいときってどうするの?となったため、ごちゃごちゃいじったときのメモを残します。