将 post.get('href') 转换为文本或字符串形式,Excel 无法处理超过 255 个字符的超链接

Posted

技术标签:

【中文标题】将 post.get(\'href\') 转换为文本或字符串形式,Excel 无法处理超过 255 个字符的超链接【英文标题】:Convert post.get('href') to text or string form, Excel can not handle hyperlinks over 255 characters将 post.get('href') 转换为文本或字符串形式,Excel 无法处理超过 255 个字符的超链接 【发布时间】:2020-02-13 20:07:16 【问题描述】:

当我将 URL 写入 Excel(从 Python 脚本)时,不会写入超过 255 个字符。但我实际上并不需要 URL 附加一个超链接。

例如,我需要“www.ebay.co.uk”,但不需要“www.ebay.co.uk”。只要我有文本,我的脚本的下一部分就可以正常工作。

我尝试了 str() 和 .text,但都没有成功

str()

if (post.get('title'))!=None:
   df1.loc[Row] = [str((post.get('href'))),Row]
   Row = Row + 1

.text

if (post.get('title'))!=None:
    df1.loc[Row] = [(post.get('href')).text,Row]
    Row = Row + 1

【问题讨论】:

【参考方案1】:

pandas.ExcelWriter 有一个options 参数,您可以将其与xlsxwriter 引擎结合使用以防止字符串到URL 的转换:

df = pd.DataFrame(
    'data': [
        'http://www.python.org/',
        'http://' + 'a'*250,
    ]
)

with pd.ExcelWriter('0.xlsx',
                    engine='xlsxwriter',
                    options='strings_to_urls': False) as writer:
    df.to_excel(writer)

来源:XlsxWriter Docs

【讨论】:

以上是关于将 post.get('href') 转换为文本或字符串形式,Excel 无法处理超过 255 个字符的超链接的主要内容,如果未能解决你的问题,请参考以下文章

win10 uwp 选择文本转语音的机器人

将对象数组转换为CSV文本或将其转换为CSV文本

通过 Javascript 或 PHP 将图像转换为文本? [复制]

Python。如何将 MOBI 文件转换为文本(或 EPUB 文件)

如何将 doc/docx 文件转换为 markdown 或结构化文本?

使用 Python 将 NetCDF 文件转换为 CSV 或文本