TypeError: لا يمكن تسلسل كائنات "Str" و "مثيل" (Python Urllib)

StackOverflow https://stackoverflow.com/questions/1660954

  •  12-09-2019
  •  | 
  •  

سؤال

كتابة برنامج بيثون، وتوصلت إلى هذا الخطأ أثناء استخدام 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، ولكن لأنك تحاول تسلسل سلسلة بمثيل كائن.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top