Python 将文件导入PhpMyAdmin中的数据库
我想将文件导入phpmyadmin数据库。它有5列:id、url、lat、lon和address。但是,文件的每一行的结构如下所示:Python 将文件导入PhpMyAdmin中的数据库,python,csv,phpmyadmin,Python,Csv,Phpmyadmin,我想将文件导入phpmyadmin数据库。它有5列:id、url、lat、lon和address。但是,文件的每一行的结构如下所示: 23947501894 https://farm2.staticflickr.com/1664/23947501894_09e21ac1c4_q.jpg 53.404021 -2.996651 Belgian Merchant Seamen, Queensway (Mersey Tunnel), Liverpool, North West England, Eng
23947501894 https://farm2.staticflickr.com/1664/23947501894_09e21ac1c4_q.jpg 53.404021 -2.996651 Belgian Merchant Seamen, Queensway (Mersey Tunnel), Liverpool, North West England, England, CH41, United Kingdom
我想输入的大多数数据都是用空格分隔的,而不是当它到达末尾的地址时,那里有很多空格和逗号。是否可以按原样将此数据输入数据库?如果是的话,有人能建议我怎么做吗
我对phpmyadmin非常陌生,我正在使用python来实现这一点。提前谢谢你的帮助,我被困住了 登录PHPMyAdmin,然后执行以下操作: [参考右框]
1.单击数据库选项卡并创建数据库
2.单击导入选项卡
3.单击浏览并选择csv文件
4.将格式从SQL更改为CSV
5.单击Go导入之前,您必须处理文本文件,因为分隔符也会根据您的数据显示为未缩放 好消息是,您的数据格式使这变得非常简单。取前四个空格,并将其转换为特殊字符(可能是
;
或~
,数据中其他任何地方都不会出现的字符)。您可以使用您最喜欢的流编辑器或文本操作程序(sed、awk、perl和python都是这项工作的理想候选者)来完成这项工作
有很多方法可以做到这一点(为了了解存在多少种不同的方法,请注意,问题在于处理整个文件,我们希望处理单独的行),但最简单的方法可能是运行sed四次:
for i in $(seq 4) ; do sed -i -e 's/ /~/' ~/import.csv ; done
请确保使用文件副本执行此操作,因为这将在位编辑指定的文件。
在phpMyAdmin导入选项卡中,您将使用~
(或您使用的任何分隔符)作为“以分隔的列:”的值,并将所有其他项留空,但在“以以下结尾的行”中保留“自动”:
您的导入设置应如下所示(同样,将需要的任何字符替换为分隔符):
这有什么帮助?传入的数据不是逗号分隔的,因此至少有些设置需要更改,但鉴于数据格式,即使这样也无法完成任务。@IsaacBennetch他一直在苦苦寻找导入CSV的选项,我向他展示了这一点,其余的他都能找到。