Запуск в TypeError с программой проверки URL

Я аналитик данных (читай: идиот), который должен составлять и проверять большое количество URL-адресов для целевых страниц отеля.

Я пытаюсь создать программу, которая будет принимать CSV из URL-адресов, совпадающих с идентификаторами отелей, пинговать URL-адрес и возвращать, был ли пинг успешным (на основе кода состояния).

Когда приходит время передать URL и идентификатор отеля в мою функцию проверки URL, я получаю следующий код ошибки:

TypeError: "'file' object has no attribute '__getitem__'"

Мой код ниже - эта ошибка возникает в строке 46. Я считаю, что это связано с тем, как я передаю значения из CSV в эту функцию. Есть ли правильный способ справиться с этим здесь?

#! python3
# Import modules and Change Directory to Program folder
#
import os
import csv
import requests
import pdb
pdb.set_trace()
os.chdir('/Users/Anon/Documents/urlChecker')
#
# define URL checking function


def urlCheck(hotelID, url):
    res = requests.get(url)
    statusCode = res.status_code
    if statusCode > 299:
        outputFile = open('outputURL.csv', 'w')
        outputWriter = csv.writer(outputFile, delimeter=',')
        outputWriter.writerow([str(hotelId), "shit", str(url)])
        outputFile.close()
    else:
        outputFile = open('outputURL.csv', 'w')
        outputWriter = csv.writer(outputFile, delimeter=',')
        outputWriter.writerow([str(hotelID), "gucci", str(url)])
        outputFile.close()
#
#
#
# import CSV of URLS
# Format of csv should be:
# First column = hotel iD
# Second Column = URL
#

urlList = open('urlList.csv')
urlReader = csv.reader(urlList)
urlData = list(urlReader)
#
#
#
# loop through urlData, calling urlCheck
with open('urlList.csv', 'r') as urlData:
    for row in urlData:
        rowNum = 0
        urlCheck(row[int(rowNum)][0], row[int(rowNum)][1])
        rowNum += 1

ОБНОВЛЕНИЕ: После исправления проблемы опечатки, указанной в комментариях, я все еще сталкиваюсь с этим

    IndexError: 'string index out of range'
    > /Users/Anon/Documents/urlChecker/urlstack.py(46)<module>()
    -> urlCheck(row[int(rowNum)][0], row[int(rowNum)][1])`

0 ответов

Другие вопросы по тегам