Ошибка при открытии URL из текстового файла - PullRequest
0 голосов
/ 04 июня 2019

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

TypeError: startfile: filepath должен быть строкой, байтами или os.PathLike, а не списком

Я попытался readlines(), readline(), поскольку я хочу открыть второй URL в файле.

Вот код

import webbrowser as wb

r_file = open("Websites.txt","r")


url = r_file.readlines()



print(url)


wb.open(url, new=0)

r_file.close()

Ответы [ 3 ]

0 голосов
/ 04 июня 2019

Попробуйте следующий код

импорт веб-браузера как wb

r_file = open ("C: \ Users \ RichardSkeggs \ OneDrive - Алхимия \ prj \ Belron \ data \ Websites.txt", "r")

url = r_file.readlines ()

для строки в URL: печать (линия) линия = line.strip ( '\ п') wb.open (строка, новая = 0)

r_file.close ()

Первый шаг - цикл по списку записей, взятых из текстового файла. Вам необходимо удалить символ новой строки.

0 голосов
/ 04 июня 2019

.readlines возвращает список, но wb.open () ожидает строку Вы можете использовать что-то подобное для решения вашей проблемы

import webbrowser as wb

r_file = open("Websites.txt","r")

urls = r_file.readlines()
for url in urls:
    print(url)
    wb.open(url, new=0)
r_file.close()
0 голосов
/ 04 июня 2019

Проще всего обрабатывать строки в файле с помощью оператора with (файлы - это контекстные менеджеры в Python, то есть они предназначены для использования в with операторах и т. П.):

open("Websites.txt","r") as in_file:
    for url in_file:
        wb.open(url.strip(), new=0)
        input("Next page: ")

Я принял меры предосторожности, чтобы удалить все пробелы в начале или конце URL-адреса, и добавил вызов input, чтобы дать вам возможность поднять URL-адреса один за другим.

...