美文网首页程序员
利用Docker网络加速代理容器进行Google排名爬虫检索

利用Docker网络加速代理容器进行Google排名爬虫检索

作者: zhcalvin | 来源:发表于2019-01-15 16:21 被阅读85次

近期项目客户需要一些关键词在Google上的排名情况信息,于是在Docker容器里参考github项目做了易于上手的Google排名查询工具。

Google检索许多外贸客户都有需要,在此不做累述。这边使用Docker级“网络加速”工具,对开发者获取Google数据更加友好。

  • 首先,新建项目文件夹并新建docker-compose.yml:
version: '2'

services:
  rallets:
    image: rallets/rallets:1.1
    environment:
      ACCESS_TOKEN: rallets.com内“开发者模式”中获取的token
      CONNECT_AREA: HKG
      BYPASS: baidu.com
  google-spider:
    command: sh
    tty: true
    image: python:alpine
    links:
      - rallets
    environment:
      http_proxy: http://rallets:8118
      https_proxy: http://rallets:8118
    volumes:
      - ./spider:/usr/src/spider

里面是rallets负责网络加速模块,“ACCESS_TOKEN"需要去其官网登录后在“我的账户”内“开发者模式”下获取:

https://rallets.com
  • 在当前目录下启动对应容器:
docker-compose up -d
  • 下载、启动完成后进入google-spider:
docker-compose exec google-spider sh
  • 可以先尝试是否rallets配置运行正常:
wget https://google.com

有内容输出就说明能访问到。

  • 随后安装必要的组件:
apk add build-base libxml2-dev libxslt-dev
pip install magic_google

magic_google是一个简约的开源google排名爬虫,github项目地址:magic_google

  • 完成后,进入google-spider被volume的文件夹: cd /usr/src/spider, 新建python文件(vi google.py),随后写入爬取代码:
import sys
from magic_google import MagicGoogle
import pprint
mg = MagicGoogle()
for i in mg.search(query=sys.argv[1], num=10):
    pprint.pprint(i)
  • 接下来运行:python google.py trump > result.txt就可以得到Google搜索“trump”后的网站排名:
    Result

相关文章

网友评论

    本文标题:利用Docker网络加速代理容器进行Google排名爬虫检索

    本文链接:https://www.haomeiwen.com/subject/vbyydqtx.html