我在执行Python代码时得到这个错误。代码运行得很完美,直到这个 print 语句。我到底做错了什么?
print("Category Loaded")
# Find pagination if any
lis=soup.select(".pagination li")
if len(lis)>0:
#get last page num
last_page=int(lis[-1].get_text().strip())
page_num=1
# Loop to get all pages
while True:
print("Loading Page : "+str(page_num))
你试图用这一行把一个值转换成一个整数。
last_page=int(lis[-1].get_text().strip())
如果你要转换的值--列表中最后一个元素的文本--不是只由数字组成,那么这是不可能的。
你的值是 "Last",而不是任何东西。int()
可以工作,所以你得到的错误。我想 soup.select(".pagination li")
除了你想要的数字外,还返回 "First"、"Previous"、"Next "和 "Last"。你需要对你的列表进行更多的清理,才能只显示数字。