zoukankan      html  css  js  c++  java
  • Python 3 写文件 UnicodeEncodeError: 'gbk' codec can't encode character

    Python 3 写文件

    UnicodeEncodeError: 'gbk' codec can't encode character

    网页代码中存在“”<meta charset="gbk">“”,如果存为 utf-8,再用浏览器打开,会出现乱码。因此,必须存为 gbk。

    解决方法:

    在写入 string 到文件时,采用   string.encode("gbk", 'ignore').decode("gbk", "ignore")

    from selenium import webdriver
    import time
    
    browser = webdriver.Firefox(executable_path ="D:\software\geckodriver-v0.30.0-win64\geckodriver.exe")
    
    get_html = "test2.html"
    # 打开文件,准备写入
    f = open(get_html, "w", encoding='gbk') ## gbk f = open(get_html, "w", encoding='utf-8')
    url = 'https://www.lewen5.com/book/45966/'  # 这里填你要保存的网页的网址
    browser.get(url)
    time.sleep(2)  # 保证浏览器响应成功后再进行下一步操作
    # 写入文件
    print(browser.page_source )  # 忽略非法字符
    
    print(type(browser.page_source) )
    #f.write(browser.page_source.encode('GBK',"ignore").decode())  # 忽略非法字符
    f.write(browser.page_source.encode("gbk", 'ignore').decode("gbk", "ignore"))  # 忽略非法字符
    #f.write(browser.page_source)  # 忽略非法字符
    print('写入成功')
    # 关闭文件
    f.close()
  • 相关阅读:
    2012的目标
    让顺丰快递给折腾了,昨晚发的快递,现在还没挪地方
    做的FM收音机终于交工,老婆验收完毕
    C语言宏定义使用技巧
    20棵树植树问题
    C简单实现动态2维数组
    运动量测试
    #pragma pack(n)的含义及其用法
    回调函数
    ubuntu 全局配置文件
  • 原文地址:https://www.cnblogs.com/emanlee/p/15643501.html
Copyright © 2011-2022 走看看