这两天业务上有个诉求,我们希望我们的APP在谷歌商店的排名越高越好,因为理论上来说,排名越高那我们能获取的自然量也就越高。在此背景下,就需要记录和监控我们APP以及竞对APP在谷歌商店中的主关键词的排名。我们可以有三种方式来实现此目的:一是手动在谷歌商店中搜索关键词并将搜索结果记录下来;二是向三方数据服务商购买,通过API接口调取数据;三是通过爬虫爬取数据。方式一耗时耗力且容易出错,方式二需要支付服务费用,因此,我们选用方式三也就是爬虫爬取数据。那本文就总结记录下 Python爬取谷歌商店关键词排名 的具体实现。

Python爬取谷歌商店关键词排名的步骤大致如下:

1. 科学上网
2. 研究网页版谷歌商店的搜索请求和搜索结果
3. 确定请求地址以及请求结果中目标数据所在的位置
4. 边开发边测试


以我所实现的需求<爬取墨西哥谷歌商店贷款关键词的排名>为例:

爬取的目标如下:

地址:墨西哥谷歌商店


爬取的代码如下:

# 导入工具包
import pandas as pd
import requests
import re
import json
from bs4 import BeautifulSoup

# 请求数据
url = 'https://play.google.com/store/search?q=pr%C3%A9stamo&c=apps&hl=es&gl=MX&pli'
response = requests.get(url=url, verify=False)

# 解析数据
text = BeautifulSoup(response.text, "html.parser")

# 提取数据
apps = text.find_all('span', attrs={'class':'DdYX5'})
df = pd.DataFrame({'app': apps})
df['rank'] = df.index + 1
df['app'] = df['app'].astype('str')
df['app'] = df['app'].str.extract(r'>(.*)<')

# 导出为excel
df[['rank', 'app']].to_excel(r'.\墨西哥谷歌商店贷款关键词APP排名.xlsx', index=False)


爬取的结果如下:


以上就是 Python爬取谷歌商店关键词排名 的实现,代码还是比较简单的,但有一点很关键,国内是无法直接访问谷歌服务的,需要科学上网,否则代码会报错。


原创文章,转载请务必注明出处并留下原文链接。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注