缩进错误:使用Selenium和Python进行web抓取时出现意外缩进

2024-09-30 16:33:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我想获得每个匹配的id号并将其保存在txt文件中

from selenium import webdriver
from bs4 import BeautifulSoup

url = "http://vip.win007.com/history/Odds_big.aspx?date=2020-8-1"
driver = webdriver.Chrome()
driver.get(url)
soup = BeautifulSoup(driver.page_source, 'html.parser')

container0 = soup.find_all("odds", {"match": "id"})
print container0

with open('c:/logs/kellyrate.txt','a') as kellyrate:
kellyrate.write(container0 + "\n")

运行脚本后:

>>>IndentationError: unexpected indent

有人能帮我解决这个问题吗


Tags: 文件fromimporttxtidhttpurldriver
2条回答

在python中,必须在“:”之后正确缩进语句。 改变

with open('c:/logs/kellyrate.txt','a') as kellyrate:
kellyrate.write(container0 + "\n")

with open('c:/logs/kellyrate.txt','a') as kellyrate:
    kellyrate.write(container0 + "\n")

此错误消息

IndentationError: unexpected indent

…表示代码块中存在缩进错误


Python缩进

Indentation指代码行开头的空格。Python使用缩进来表示代码块


这个用例

在您的程序中,代码行:

kellyrate.write(container0 + "\n")

作为代码块,将对c:/logs/kellyrate.txt中的每一行进行迭代。因此,您需要通过以下方式缩进这行代码:

  • 制表符字符
  • 空格字符

因此,您的有效代码块将是:

with open('c:/logs/kellyrate.txt','a') as kellyrate:
    kellyrate.write(container0 + "\n")

相关问题 更多 >