Python urllib2不检索html,并请求两个库

Python urllib2不检索html,并请求两个库,python,web-scraping,beautifulsoup,python-requests,Python,Web Scraping,Beautifulsoup,Python Requests,我想从本网站中提供的国家检索URL列表 在这个例子中,如果我们检查元素“English”,就会看到我想要检索的每个国家的URL列表 我在BeutifulSoup中为此编写了以下代码 import requests from bs4 import BeautifulSoup import urllib2 import csv import json import io import sys #reload(sys) #sys.setdefaultencoding('utf8') Main_u

我想从本网站中提供的国家检索URL列表

在这个例子中,如果我们检查元素“English”,就会看到我想要检索的每个国家的URL列表

我在BeutifulSoup中为此编写了以下代码

import requests
from bs4 import BeautifulSoup
import urllib2
import csv
import json
import io
import sys
#reload(sys)
#sys.setdefaultencoding('utf8')


Main_url='https://www.zain.com/en/?home=home';
response=requests.get(Main_url,verify=False);

body=response.text

soup=BeautifulSoup(body,'html.parser')
#print soup
Country_Url_list=soup.find('ul',attrs={"class":"lnklist clearfix"})
print Country_Url_list

我也尝试过urllib2,但它没有检索到一个t html标记,这就是为什么
国家Url\u列表
返回空值的原因。我错了。

我已经测试了你的代码。由于执行
response.text
重定向时会发生以下情况,因此您不会得到任何结果:

"<html><title>You are being redirected...</title>\n<noscript>Javascript is required. Please enable javascript before you are allowed to see this page.</noscript>\n...
“正在重定向您…\n需要Java脚本。请在允许您查看此页面之前启用javascript。\n…”。。。

您的抓取页面看起来像是动态页面。在这之后,您应该使用
selenium
来检索URL。快乐编码:)

那么,BS需要文本作为输入的解决方案是什么呢?urllib2呢?它也会发生同样的事情吗?urllib抛出同样的重定向。这是一个真正的问题=)