Python爬行-TypeError:';int';对象是不可编辑的
这是我现在的代码:Python爬行-TypeError:';int';对象是不可编辑的,python,loops,web-crawler,iterable,Python,Loops,Web Crawler,Iterable,这是我现在的代码: front_deeplink = ("http://www.jsox.de") Spider = 20 Region = 7236 def trade_spider(max_pages): for reg in Region: page = 0 while page <= max_pages: page += 1 r = requests.get("http://www.jsox.de/affiliatesearch.
front_deeplink = ("http://www.jsox.de")
Spider = 20
Region = 7236
def trade_spider(max_pages):
for reg in Region:
page = 0
while page <= max_pages:
page += 1
r = requests.get("http://www.jsox.de/affiliatesearch.aspx?®ionid=" + str(reg) + "&pid=" + str(page))
soup = BeautifulSoup(r.content)
g_data = soup.find_all("div", {"class": "gridHeadOuter productInfoOuter"})
for item in g_data:
Header = item.find_all("div", {"class": "offerInto"})
Header_final = (Header[0].contents[0].text.strip())
price = item.find_all("strong", {"class": "priceBig priceBlock"})
Price_final = (price[0].text.strip())
Deeplink = item.find_all("a")
for t in set(t.get("href") for t in Deeplink):
Deeplink_final = (str(front_deeplink) + t)
print("Header: " + Header_final + " | " + "Price: " + Price_final[:-1] + " | " + "Deeplink: " + Deeplink_final)
trade_spider(int(Spider))
当我试着运行这个时
我做错了什么
有人能帮我吗?感谢您的反馈。在您的代码中,您有以下声明:
Region = 7236
然后,您尝试这样做:
for reg in Region:
显然,
区域
只是一个数字,你不能像迭代列表那样迭代它。使用for
遍历列表或其他可编辑对象-数字根本不可编辑。在您的代码中有以下声明:
Region = 7236
然后,您尝试这样做:
for reg in Region:
显然,
区域
只是一个数字,你不能像迭代列表那样迭代它。使用for
遍历列表或其他可编辑对象-数字根本不可编辑。使用range()或xrange(),它们接收int并生成一个可编辑对象。使用range()或xrange(),它接收一个int并生成一个iterable。您已经定义了Region=7236
,这是一个int
,因此,正如错误所说,您无法对它进行迭代。您想做什么?你应该如何处理数字7236
?7236是一个简单的区域数字,例如RomeOK,那么如果你知道7236
是region
的值,那么你希望如何处理7236中的注册表中的呢?你不知道数字是不可编辑的。你已经定义了region=7236
,这是一个int
,因此,正如错误所说,您不能对它进行迭代。您想做什么?你应该如何处理数字7236
?7236是一个区域的简单数字,例如RomeOK,那么如果你知道7236
是region
的值,那么你希望如何处理7236中的for reg。