【问题标题】:Getting total page view from (french) Wikipedia by page按页面从(法语)维基百科获取总页面浏览量
【发布时间】:2019-03-18 14:41:50
【问题描述】:

我正在搜索法语维基百科项目的任何页面的总浏览量(从 2015 年 7 月,PageViews API 的发布日期到 2019 年 1 月 1 日)。

使用 PageViews API (How to use Wikipedia API to get the page view statistics of a particular page in wikipedia?) 对我来说似乎太重了:我需要来自超过 200 万个页面的数据。

将 MassViews (https://tools.wmflabs.org/massviews/) 与返回所有页面标题 (https://quarry.wmflabs.org/query/34473) 的查询一起使用也不起作用:MassView 受到 20000 个页面的限制,并且无法从我的查询结果中检索某些页面标题的数据。

你知道一些更有效的工具吗?

【问题讨论】:

    标签: wikipedia wikipedia-api pageviews


    【解决方案1】:

    维基百科的API很强大,像this可以获取法国维基百科的Apollo_10的浏览量。基于此制作脚本并不难。

    如果您认为使用 API 查询所有网站很繁重,您可以使用 google bigquery。它在其开放数据集中有综合浏览量数据。有一个tutorial关于这个。

    这是我的例子:

    1. 访问 bigqery 的控制台。
    2. 在答案中输入以下内容。
    select * from `bigquery-public-data.wikipedia.pageviews_2015` where datehour = '2015-07-12 18:00:00 UTC';
    
    1. 此时您将获得一个包含所有网页浏览数据的表格。

    如果您想获取法语 wiki 的特定页面,您可以指定 'wiki=fr' 和 'title = xxx'。由于我是 bigquery 的新手,我不知道如何跨表查询数据并导出。但这是可能的,因为我对 SQL 的了解很差。您可以按标题汇总数据并导出结果。

    唯一的问题是 bigquery 不是免费的。例如,上面的查询需要 6GB。查询(按需)对于前 1 TB 是免费的,之后每 TB 5 美元。 Bigquery 将根据您选择的列中处理的数据收费,即使您使用“限制”。所以可能要花很多钱。

    【讨论】:

      【解决方案2】:

      您可以从这里下载所有浏览量的转储:https://dumps.wikimedia.org/other/pageviews/

      【讨论】:

      • 谢谢。问题是这些文件非常大。您熟悉法国项目子集吗?
      • 不怕。如果您正在寻找数百万个数据点,您将需要使用转储。它仍然应该比拨打 200 万次电话要快。
      【解决方案3】:

      找到这个:https://dumps.wikimedia.org/other/pagecounts-ez/merged/,它是页面视图转储的合并。记录在这里:https://wikitech.wikimedia.org/wiki/Analytics/Data_Lake/Traffic/Pageviews

      这是一个 Python 脚本的示例,它可以简单地打印文件的每一行。

      import csv
      import bz2
      from pprint import pprint
      
      with bz2.open("pagecounts-2011-12-views-ge-5-totals.bz2", "rt", errors = "replace") as fichier:
          for line in fichier:
              text = line.split()
              if(text[0] == "fr"):
                  pprint(text)
      

      有了这些文件,每个月一个,设置这种工作流程变得很容易:过滤我真正想要的留置权(法语 wiki),将 DATA INFILE 加载到 MySQL 数据库中,然后再次使用 Python 查询它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-04
        • 1970-01-01
        相关资源
        最近更新 更多