Python抓取,网页不存在,但网站重定向到另一个页面

Python抓取,网页不存在,但网站重定向到另一个页面,python,web-scraping,Python,Web Scraping,我试图找到一种方法来知道网页是否存在。有很多方法,如httlib2、urlparse和using请求。但在我的情况下,如果网页不存在,网站会将我重定向到主页 例如 有什么方法可以捕捉到吗?您可以检查最终的url是否是您被重定向到的url,以及是否有任何重定向历史记录 >>> import requests >>> target_url = "https://www.thenews.com.pk/latest/category/sports/2015-09-2

我试图找到一种方法来知道网页是否存在。有很多方法,如httlib2、urlparse和using请求。但在我的情况下,如果网页不存在,网站会将我重定向到主页 例如


有什么方法可以捕捉到吗?

您可以检查最终的
url
是否是您被重定向到的url,以及是否有任何
重定向历史记录

>>> import requests
>>> target_url = "https://www.thenews.com.pk/latest/category/sports/2015-09-21"
>>> response = requests.get(target_url)
>>> response.history[0].url
u'https://www.thenews.com.pk/latest/category/sports/2015-09-21'
>>> response.url
u'https://www.thenews.com.pk/'
>>> response.history and response.url == 'https://www.thenews.com.pk/' != target_url
True

您提到的URL提供了一个重定向返回代码(307),您可以捕获该代码。请看这里:

$ curl -i https://www.thenews.com.pk/latest/category/sports/2015-09-21
HTTP/1.1 307 Temporary Redirect
Date: Sun, 26 Mar 2017 10:13:39 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Set-Cookie: __cfduid=ddcd246615efb68a7c72c73f480ea81971490523219; expires=Mon, 26-Mar-18 10:13:39 GMT; path=/; domain=.thenews.com.pk; HttpOnly
Set-Cookie: bf_session=b02fb5b6cc732dc6c3b60332288d0f1d4f9f7360; expires=Sun, 26-Mar-2017 11:13:39 GMT; Max-Age=3600; path=/; HttpOnly
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Location: https://www.thenews.com.pk/
X-Cacheable: YES
X-Varnish: 654909723
Age: 0
Via: 1.1 varnish
X-Age: 0
X-Cache: MISS
Access-Control-Allow-Origin: *
Server: cloudflare-nginx
CF-RAY: 345956a8be8a7289-AMS

使用response.status_code-任何以3开头的代码都是重定向代码。但是如果您按照重定向进行操作,您将在最后得到一个
200