python - 以 10 为基数的 int() 的无效文字:'Last'
问题描述
执行 Python 代码时出现此错误。代码运行完美,直到这个打印语句。我究竟做错了什么?
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())
如果您要转换的值(列表中最后一个元素的文本)不仅仅由数字组成,那么这将不起作用。
您的值是“最后一个”,而不是任何int()
可以使用的值,因此您会收到错误消息。我想soup.select(".pagination li")
除了你想要的数字之外,还会返回“第一个”、“上一个”、“下一个”和“最后一个”。您需要在列表上进行更多清理以仅显示数字。
推荐阅读
- c# - 使用 MVVM 中的实体框架从数据库修改实体时出现 ObjectContext 错误
- google-sheets - 计算 googlesheets 中的 VIP 等级
- algorithm - 算法难题:球堆积问题
- getjson - $.getJSON 正确执行,但 js 标签未更新(已解决)
- symfony - Easy-admin 数组字段覆盖值
- sql-server - SQL Server,关于“无效列名”的基本问题
- vba - 无论如何用公共变量填充用户表单文本框?
- javafx - TornadoFX/JavaFX 树视图在变异多个 ObservableList 后无法正确重新填充
- javascript - 尝试使用 puppeteer 单击 iframe 中的按钮
- mongodb - 来自 Kafka 的 MongoSource 连接创建奇怪的 _data 键