前缀 "http://" 有效但实际上是 ""https://"
Prefix "http://" valid but actually ""https://"
一长串不完整的网站,缺少一些前缀,例如“http://www”。等等
pewresearch.org
narod.ru
intel.com
xda-developers.com
oecd.org
我试过了:
import requests
from lxml.html import fromstring
to_check = [
"pewresearch.org",
"narod.ru",
"intel.com",
"xda-developers.com",
"oecd.org"]
for each in to_check:
r = requests.get("http://www." + each)
tree = fromstring(r.content)
title = tree.findtext('.//title')
print (title)
他们返回:
Pew Research Center | Pew Research Center
Лучшие конструкторы сайтов | Народный рейтинг конструкторов для создания сайтов
Intel | Data Center Solutions, IoT, and PC Innovation
XDA Portal & Forums
Home page - OECD
似乎他们的都是以“http://www.”开头的,但不是——因为例如,正确的是“https://www.pewresearch.org/”。
使用在线工具或 Python 最快的方法是什么,我可以找出它们的完整和正确的地址,而不是在网络浏览器中一个一个地键入它们? (有些可能是 http,有些是 https)
谢谢。
编写脚本/短程序向每个站点发送HEAD 请求。服务器应响应重定向(例如到 HTTPS)。跟随每个重定向,直到没有收到进一步的重定向。
C# HttpClient 可以follow redirects automatically.
对于 Python,请参阅@jterrace 的回答 here 使用带有以下代码片段的请求库:
>>> import requests
>>> r = requests.head('http://github.com', allow_redirects=True)
>>> r
<Response [200]>
>>> r.history
[<Response [301]>]
>>> r.url
u'https://github.com/'
一长串不完整的网站,缺少一些前缀,例如“http://www”。等等
pewresearch.org
narod.ru
intel.com
xda-developers.com
oecd.org
我试过了:
import requests
from lxml.html import fromstring
to_check = [
"pewresearch.org",
"narod.ru",
"intel.com",
"xda-developers.com",
"oecd.org"]
for each in to_check:
r = requests.get("http://www." + each)
tree = fromstring(r.content)
title = tree.findtext('.//title')
print (title)
他们返回:
Pew Research Center | Pew Research Center
Лучшие конструкторы сайтов | Народный рейтинг конструкторов для создания сайтов
Intel | Data Center Solutions, IoT, and PC Innovation
XDA Portal & Forums
Home page - OECD
似乎他们的都是以“http://www.”开头的,但不是——因为例如,正确的是“https://www.pewresearch.org/”。
使用在线工具或 Python 最快的方法是什么,我可以找出它们的完整和正确的地址,而不是在网络浏览器中一个一个地键入它们? (有些可能是 http,有些是 https)
谢谢。
编写脚本/短程序向每个站点发送HEAD 请求。服务器应响应重定向(例如到 HTTPS)。跟随每个重定向,直到没有收到进一步的重定向。
C# HttpClient 可以follow redirects automatically.
对于 Python,请参阅@jterrace 的回答 here 使用带有以下代码片段的请求库:
>>> import requests
>>> r = requests.head('http://github.com', allow_redirects=True)
>>> r
<Response [200]>
>>> r.history
[<Response [301]>]
>>> r.url
u'https://github.com/'