Я пытался проанализировать веб-страницу с помощью BeautifulSoup. Когда я импортирую urlopen fromm urllib.request и открываю https://pbejobbers.com, вместо самой веб-страницы возвращается следующее:
<html>
<body>
<script src="/aes.min.js" type="text/javascript"></script>
<script>
function toNumbers(d){var e=[];d.replace(/(..)/g,function(d){e.push(parseInt(d,16))});return e}function toHex(){for(var d=[],d=1==arguments.length&&arguments[
0].constructor==Array?arguments[0]:arguments,e="",f=0;f<d.length;f++)e+=(16>d[f]?"0":"")+d[f].toString(16);return e.toLowerCase()}var a=toNumbers("0181cdf0013bf7
0f89e91be7ef0d00c2"),b=toNumbers("a168ceeade18bccc1cdd77af68ef1753"),c=toNumbers("200a38f39b6a3fe3564acf9bd88c25da");document.cookie="OCXS="+toHex(slowAES.decryp
t(c,2,a,b))+"; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/";document.location.href="http://pbejobbers.com/product/search?search=USC4215&81e93addddb02a10cd0652f09
370ae96=1";
</script>
</body>
</html>
У меня есть массив кодов UP C, которые я использую для поиска продукты, которые я ищу. Я передаю массив в функцию и анализирую html, чтобы найти необходимые теги, но я могу добраться до фактического html. Вот мой код:
from urllib.request import urlopen
from bs4 import BeautifulSoup
upc_codes = ['USC4215', 'USC4225', 'USC12050']
def retrunh1(upc):
html = urlopen('https://pbejobbers.com/product/search?search={}'.format(upc))
soup = BeautifulSoup(html, 'html.parser')
print(soup.prettify())
if __name__=='__main__':
for upc in upc_codes:
retrunh1(upc)
Я думаю, что проблема с функцией запроса. Я изолировал его, чтобы увидеть, что он возвращает, и я получаю тот же html обратно, как указано выше, когда я делаю это:
import requests
r = requests.get('https://pbejobbers.com')
print(r.text)
Я довольно новичок в разборе веб-страниц, и мне нужно некоторое предложение о том, как решить это. Спасибо