TypeError: لا يمكن تسلسل كائنات "Str" و "مثيل" (Python Urllib)
سؤال
كتابة برنامج بيثون، وتوصلت إلى هذا الخطأ أثناء استخدام urllib.urlopen
وظيفة.
Traceback (most recent call last):
File "ChurchScraper.py", line 58, in <module>
html = GetAllChurchPages()
File "ChurchScraper.py", line 48, in GetAllChurchPages
CPs = CPs + urllib.urlopen(url)
TypeError: cannot concatenate 'str' and 'instance' objects
url = 'http://website.com/index.php?cID=' + str(cID)
CPs = CPs + urllib.urlopen(url)
المحلول
Urlopen (URL) إرجاع كائن يشبه الملفات. للحصول على محتويات السلسلة، حاول
CPs = CPs + urllib.urlopen(url).read()
نصائح أخرى
Urllib.urllopen لا يرجع سلسلة، فإنه بإرجاع كائن
Doc.
If all went well, a file-like object is returned.
المشكلة في هذا الخط: CPs = CPs + urllib.urlopen(url)
انا افترض CPs
هي سلسلة ومع ذلك urllib.urlopen(url)
إرجاع ملف مثل كائن.
إذا كنت ترغب في الانضمام إلى محتويات الملف في url
مع CPs
ثم تحتاج إلى القيام بشيء مثل هذا: CPs = CPs + urllib.urlopen(url).read()
.
ما هو CPS؟ يبدو أنه سلسلة. سيعود Urlopen مثيل كائن يشبه الملفات، وليس سلسلة. يرى - http://docs.python.org/library/urllib.html..
لا يتم إلقاء الخطأ من Urlopen، ولكن لأنك تحاول تسلسل سلسلة بمثيل كائن.
لا تنتمي إلى StackOverflow