IndentationError:使用Selenium和Python进行网络抓取时出现意外缩进

时间:2020-08-07 10:37:32

标签: python python-3.x selenium web-scraping indentation

我想获取每个比赛的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

任何人都可以帮助我解决问题吗?

2 个答案:

答案 0 :(得分:0)

在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")

答案 1 :(得分:0)

此错误消息...

IndentationError: unexpected indent

...表示您的代码块中存在缩进错误。


Python缩进

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


此用例

在您的程序中,代码行:

kellyrate.write(container0 + "\n")

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

  • tab 字符
  • 空格字符

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

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