Python with statement - SyntaxError: unexpected EOF while parsing

Python with statement - SyntaxError: unexpected EOF while parsing

我正在尝试编写代码来循环浏览网站上的约 90k 页以抓取数据,并且我正在尝试开始使用 "with" 语句。我的 csv 文件有一个名为 "Symbol" 的列,如果需要我可以分享它。

我知道这是一个语法错误,但我看不出错误是什么。我试过将最后一行更改为其他内容,但我总是遇到同样的错误。我在另一个线程中读到 "with" 自行关闭,所以我不确定我还应该做什么。

就我的最终计划而言,我想编写一个循环来遍历所有 90k 个网站,抓取数据。我有一些后续步骤的代码,所以如果有更好的方法让我完成这一步,我会洗耳恭听其他解决方案。

谢谢!

我的代码:

with open('~/plants_symbols.csv') as csvfile:
    reader = csv.DictReader(csvfile)
    for row in reader:
        try:
            rkey = requests.get('https://plants.usda.gov/java/reference' + row['Symbol'])
            if rkey.status_code == 200: 
                print("hooray!")

文件“”,第 7 行 打印("hooray!") ^ 语法错误:解析时出现意外的 EOF

您需要为 try 添加一个 except 语句。

像这样:

import requests

with open('~/plants_symbols.csv') as csvfile:
    reader = csv.DictReader(csvfile)
    for row in reader:
        try:
            rkey = requests.get('https://plants.usda.gov/java/reference' + row['Symbol'])
            if rkey.status_code == 200:
                print("hooray!")
        except Exception: 
            print('Error!')