import re
import requests
pattern = re.compile(r'data-shorturl="https://r.rbc.ru/(.*?)"')
with requests.Session() as session:
session.headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36'}
response = session.get("https://www.rbc.ru/society/05/01/2018/5a4e9de19a7947e2bef693a1?from=main")
short_url = pattern.search(response.text).group(1)
response = session.get("https://www.rbc.ru/redir/stat/{short_url}".format(short_url=short_url))
data = response.json()
print(data["show"])
您可以避免使用
selenium
而直接使用requests
,但在这种情况下,这需要两个步骤—首先从初始网页获取短URL值,然后从单独的端点获取视图数:当前打印
7712
。你知道吗请注意,在本例中,使用regex提取短URL值是完全可以的,因为我们不使用正则表达式解析HTML标记和结构,而只是在文档中某处提取URL字符串的特定部分。你知道吗
相关问题 更多 >
编程相关推荐