Что не так с моей функцией urlopen кода?

Ниже приведен мой код Python для проверки ругательства в файле. Но я не могу найти, почему компилятор показывает ошибку: module 'urllib' has no attribute 'urlopen',

import urllib
def read_txt():
   quote = open("c:\\read.txt")  #for opening the file

   content = quote.read()  #for reading content in a file
   print(content)
   quote.close()  #for closing the file
   check_profanity(content)


def check_profanity(text):
   connection = urllib.urlopen("https://www.wdylike.appspot.com/?q=" + text)
   ouput = connection.read()
   print(output)
   connection.close() 
read_txt()

2 ответа

Решение

В Python 3 urllib теперь это пакет, который собирает несколько модулей. urlopen() в настоящее время является частью urllib.request модуль:

from urllib.request import urlopen

Тогда используя это:

connection = urlopen("https://www.wdylike.appspot.com/?q=" + text)

Ну потому что urllib не имеет urlopen метод.

В Python2 вы должны использовать urllib2в то время как в Python 3 вы должны использовать urllib.request

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