Python 2.7: неизвестный тип URL: urllib2 - BeautifulSoup - PullRequest
0 голосов
/ 10 июня 2018

импорт библиотек

import urllib2
from bs4 import BeautifulSoup

новые библиотеки:

import csv
import requests 
import string

Определение переменных:

i = 1
str_i = str(i)
seqPrefix = 'seq_'
seq_1 = str('https://anyaddress.com/')
quote_page = seqPrefix + str_i

# Затем используйте Python urllib2 для полученияHTML-страница объявленного URL.

# query the website and return the html to the variable 'page'
page = urllib2.urlopen(quote_page)  


#Finally, parse the page into BeautifulSoup format so we can use BeautifulSoup to work on it.

# parse the html using beautiful soup and store in variable `soup`
soup = BeautifulSoup(page, 'html.parser')

В результате все в порядке ... за исключением того, что:

СООБЩЕНИЕ ОБ ОШИБКЕ:

page = urllib2.urlopen (quote_page) Файл "C: \ Python27 \ lib \ urllib2.py", строка 154, в urlopen, возвращаем opener.open (url, data, timeout) Файл "C: \ Python27 \ lib \ urllib2.py", строка 423, вopen protocol = req.get_type () Файл "C: \ Python27 \ lib \ urllib2.py", строка 285, в get_type увеличить ValueError, "неизвестный тип URL:% s"% self .__ original ValueError: неизвестный тип URL: seq_1

Почему?

txs.

Ответы [ 2 ]

0 голосов
/ 10 июня 2018

Похоже, вам нужно объединить seq_1 & str_i

Пример:

seq_1 = str('https://anyaddress.com/')
quote_page = seq_1 + str_i

Вывод:

https://anyaddress.com/1
0 голосов
/ 10 июня 2018

Вы можете использовать словарь локальной переменной vars ()

page = urllib2.urlopen(vars()[quote_page])

В том виде, в каком вы его использовали, он пытался открыть URL, используя строку «seq_1» в качестве URL, а не значение переменной seq_1действительный URL.

...