configparser模块解析文件出错

新手上路,请多包涵

源码如下:

# _*_ coding:utf-8 _*_
import os
import configparser
import codecs


# 获取当前目录下中的配置文件
Path = os.path.join(os.getcwd(), os.listdir()[0])
print(Path)


def get_url(name):
    config = configparser.ConfigParser()
    config.read(Path)
    url = config.get("HTTP", name)
    return url
    

配置文件如下:

[HTTP]
baseurl = https://mo.1394x.com
port = 8000
versoin = 3000

调用文件如下:

import unittest
import requests
import sys
sys.path.append("..")
from config import readconfigfile as config


class TestGetAwardData(unittest.TestCase):

    def setUp(self):
        # 接口地址
        self.host = config.get_url("baseurl")
        # 重庆时时彩中APP两面历史接口地址
        self.base_url = self.host + "/ssc/GetAwardData?version=3000"
        print(self.base_url)

    def test_status_code(self):
        """验证接口返回状态码是否是200"""
        st_code = requests.get(self.base_url).status_code
        st_json = requests.get(self.base_url).json()
        self.assertEqual(st_code, 200)
        if st_code != 200:
            print("接口状态返回错误!!")
        self.assertEqual(st_json['state'], 200)
        self.assertEqual(st_json['items']['state'], True)
        self.assertEqual(st_json['error'], None)
        print(len(st_json))
        self.assertNotEqual(len(st_json), 0)

    def tearDown(self):
        pass


if __name__ == '__main__':
    unittest.main()
    

以上代码去调用的时候,提示

Traceback (most recent call last):
  File "E:/python_script/AutoTest/Api/Cqssc_api/case/test_01.py", line 12, in setUp
    self.host = config.get_url("baseurl")
  File "..\config\readconfigfile.py", line 25, in get_url
    config.read(Path)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\lib\configparser.py", line 697, in read
    self._read(fp, filename)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\lib\configparser.py", line 1015, in _read
    for lineno, line in enumerate(fp, start=1):
UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 482: illegal multibyte sequence

百度好久了,一直没有找到解决办法,请大神指点!1

阅读 3.4k
1 个回答
config.read(Path, encoding='UTF-8')
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题