通过POST方法传递值计算域名年龄
我想通过在网址中传递变量来计算几个网站的域名年龄,网址是 http://www.webconfs.com/domain-age.php,像这样传递域名 http://www.webconfs.com/domain-age.php?domains=youtube.com。
问题在于这个网站的 form
标签,他们使用的是 POST
方法,所以在我的Python代码中,无论我是否添加域名,返回的网页都是一样的。
我该如何从网址中传递不同网站的值,并获取结果网页呢?
1 个回答
1
你可以使用 requests
这个库来发送一个 POST
请求,然后用 BeautifulSoup
这个工具来解析网页,从网页中获取年龄信息:
>>> import requests
>>> from bs4 import BeautifulSoup
>>> import re
>>> url = "http://www.webconfs.com/domain-age.php"
>>> domain = 'youtube.com'
>>> r = requests.post(url, {'domains': domain, 'submit': 'submit'})
>>> soup = BeautifulSoup(r.content)
>>> for item in soup.find_all('a', href=re.compile('website-history')):
... print item.text
...
9 years 0 months old