Python ValueError:stat:Jupyter笔记本上的Windows解析URL请求的路径太长

Python ValueError:stat:Jupyter笔记本上的Windows解析URL请求的路径太长,python,xml,python-requests,Python,Xml,Python Requests,我正试图解析我的公司Odata数据,以构建一部分采用CompanyName和LateDays字段的迟交供应商 我打开文件并将其转换为字符串,因为我发现了一篇关于如何使用认证请求URL的非常有用的帖子,我获得了包含整个报告的字符串文本。该报告是用XML编写的,我正在Jupyter笔记本中使用Python 3.7来处理它 我发现另一篇文章使用类方法查询了一个类似于我的XML文件,但我的输出是错误值error:stat:path对于Windows来说太长了 我怎样才能解决这个问题 谢谢 import

我正试图解析我的公司Odata数据,以构建一部分采用CompanyName和LateDays字段的迟交供应商

我打开文件并将其转换为字符串,因为我发现了一篇关于如何使用认证请求URL的非常有用的帖子,我获得了包含整个报告的字符串文本。该报告是用XML编写的,我正在Jupyter笔记本中使用Python 3.7来处理它

我发现另一篇文章使用类方法查询了一个类似于我的XML文件,但我的输出是错误值error:stat:path对于Windows来说太长了

我怎样才能解决这个问题

谢谢

import requests
import pandas as pd
import numpy as np
import base64
import urllib.request

request = urllib.request.Request('https://myUrl_OData')
base64string = base64.b64encode(bytes('%s:%s' % ('Myusername', 'Mypassword'),'ascii'))
request.add_header("Authorization", "Basic %s" % base64string.decode('utf-8'))
result = urllib.request.urlopen(request)
resulttext = result.read()

text = resulttext.decode(encoding='utf-8',errors='ignore')

from xml.sax import parse
from xml.sax.handler import ContentHandler

class properties(ContentHandler):
    def __init__(self):
        self.elements = []          # stack of elements
        self.char_data = u''        # string buffer
        self.current_vendor = u'' 
        self.current_latedays = u''

    def startElement(self, name, attrs):
        if companyname == u'CompanyName':
            self.elements.append(u'CompanyName')
        if latedays == u'LateDays':
            self.elements.append(u'LateDays')

    def characters(self, chars):
        if len(self.elements) > 0 and self.elements[-1] in [u'CompanyName', u'LateDays']:
            self.char_data += chars

    def endElement(self, name):
        self.elements.pop() if len(self.elements) > 0 else None

        if companyname == u'CompanyName':
            self.current_vendor = self.char_data
            self.char_data = ''
        if latedays == u'LateDays':
            self.current_latedays = self.char_data
            self.char_data = ''

        if companyname == 'CompanyName':
            if self.current_latedays == u'LateDays':
                print('Found:', self.current_customer)

            # clear the buffers now that is finished
            self.current_year = u''
            self.current_customer = u''
            self.char_data = u''


parse(r"\\\\?\\" + text, properties())

您的错误似乎与XML解析无关,但与您的操作系统限制有关。 在基于Windows的操作系统上,文件路径不能超过260个字符()

尝试减少文件名的长度,或减少指向数据的嵌套文件夹的数量