请求模块未接收到源代码

时间:2018-09-11 15:15:42

标签: python-3.x python-requests

我正在使用请求模块将请求发送到服务器。作为回应,我从页面源中得到的只是几行,而不是整个页面。

from urllib.error import HTTPError
from urllib.error import URLError
from bs4 import BeautifulSoup
import requests
url = "https://www.yellowpages.ae/c/advs/uae/web.html"

header = {'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
          'Accept-Encoding': 'gzip, deflate, br',
          'Accept-Language': 'en-GB,en;q=0.9,en-US;q=0.8,ml;q=0.7',
          'Cache-Control': 'max-age=0',
          'Connection': 'keep-alive',
          'Host': 'www.yellowpages.com',
          'Upgrade-Insecure-Requests': '1',
          'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36'
          }
try:
    print("Present Link: ", url)
    response = requests.get(url, headers=header)
except HTTPError as e:
    print(e)
except URLError:
    print("URL Error")
else:
    print(response.status_code)
    print("response is:", response.text)

如果我未在请求中发送标题,则输出页面 输出就是这些数据,而页面源包含大量文本,请检查并建议我做错了什么。

Web at Yellowpages.ae
window.onload = markiconsLarge;
}
$create(Sys.Extended.UI.AutoCompleteBehavior, {"completionSetCount":12,"delimiterCharacters":"","id":"advs_autokey","minimumPrefixLength":2,"serviceMethod":"Getkeyword","servicePath":"../../../YpWebService.asmx","useContextKey":true}, null, null, $get("advs_txtkey"));
});

。 。 。 。

类似这样的东西无法将整个输出粘贴为代码。所以这只是一部分,以使我的观点清楚。

将不胜感激。谢谢

0 个答案:

没有答案