其中一个scrapy-ed项目似乎不包含HTML内容。在MySQL数据库中,它确实包含的内容包括稍长的非常规-
(短划线)。它可能是来自中国输入的短划线符号,或类似的东西。我在下面复制它,不确定它是否会保留原始形式。网络链接为here,此非常规短划线位于标题和说明的开头。
**Hospitalist – Chattanooga**
为了进一步证明这一点,MySQL的导出CVS文件将这个奇怪的短划线转换为?€?
。很可能这个奇怪的符号会导致非显示问题。
我想要删除这个奇怪的符号,或者用,
或常规破折号替换它。哪里可以做到?在Scrapy期间?还是在MySQL?对不起,这不是具体的编码问题。在确定此问题的任何代码之前,我需要一些指导。
答案 0 :(得分:0)
长划线称为EM划线fileformat - EM dash 您看到它的原因可能是由于选择的编码。
尝试设置不同的编码或用你在问题中提到的符号替换EM短划线。
在php中,您可以使用以下代码执行此操作:
str_replace(chr(151), ',' $input);