0
im используя Python3.4, и я хочу использовать этот скрипт. Однако его создание для более ранней версии Python не работает. Я надеялся, что кто-то может помочь мне изменить его на код python 3. Ive пытался импортировать urllib.request как urllib2 (потому что, по-видимому urllib2 слито для питона 3)Ошибка Urllib от python 2 до python 3
import re
import sys
import urllib.request as urllib2
from bs4 import BeautifulSoup
usage = "Run the script: ./geolocate.py IPAddress"
if len(sys.argv)!=2:
print(usage)
sys.exit(0)
if len(sys.argv) > 1:
ipaddr = sys.argv[1]
geody = "http://www.geody.com/geoip.php?ip=" + ipaddr
html_page = urllib2.urlopen(geody).read()
soup = BeautifulSoup.BeautifulSoup(html_page)
# Filter paragraph containing geolocation info.
paragraph = soup('p')[3]
# Remove html tags using regex.
geo_txt = re.sub(r'<.*?>', '', str(paragraph))
print geo_txt[32:].strip()
"не работает" означает, что именно? Вы получили сообщение об ошибке? Который? –
И вы хотите заменить 'BeautifulSoup.BeautifulSoup (html_page)' только с помощью 'BeautifulSoup (html_page)' –
И вместо того, чтобы использовать регулярное выражение для «разметки тегов», просто используйте 'paragraph.get_text()' .. –