我不想宣传任何产品。
但错误是非常具体的,我不知道怎么回事。
我想获取页面A中菜单中的链接,该链接位于代码中,但该页面还有另一个页面关联,B
当我阅读菜单时,它从B页面看菜单,我不明白为什么。
在html中,我看到所有函数和库都在域的页面B中。
有什么建议吗?
from bs4 import BeautifulSoup
import http.cookiejar, urllib.request
mainurl="http://uk.example.com"
cookijar = http.cookiejar.CookieJar()
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cookijar))
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
mainPage = opener.open(mainurl)
mainPageRequest = mainPage.read()
mainPagesoup = BeautifulSoup(mainPageRequest)
menu=mainPagesoup.find("div", { "class" : "mainNavigation_linkList_content" })
print(menu)
我想要http://uk.example.com 并且程序读取http://uk.example.co.uk/菜单
答案 0 :(得分:1)
urllib似乎没有像服务器期望的那样处理重定向。
首先安装requests:
pip install requests
然后试试这个:
import requests
from bs4 import BeautifulSoup
s = requests.Session()
mainPage = s.get("http://uk.accessorize.com")
mainPagesoup = BeautifulSoup(mainPage.text)
menu=mainPagesoup.find("div", { "class" : "mainNavigation_linkList_content" })
print(menu)