码迷,mamicode.com
首页 > 编程语言 > 详细

用python爬虫爬取饿了么外卖店铺排名

时间:2016-08-02 17:23:49      阅读:2409      评论:0      收藏:0      [点我收藏+]

标签:浏览器   爬虫   python   version   

#!/usr/bin/env python
# encoding: utf-8

"""
@version: ??
@author: phpergao
@license: Apache Licence 
@file: elm_paiming.py
@time: 2016/8/2 11:18
"""

import requests,re,urllib,codeop,urllib.request,nturl2path,macurl2path
User_Agent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36"#伪装成浏览器访问
headers = (‘User-Agent‘, User_Agent)
opener = urllib.request.build_opener()
opener.addheaders = [headers]
def paiming(latitude,longitude):
    a=0
    flag=True
    num=0
    while flag:
        url ="https://www.ele.me/restapi/shopping/restaurants?extras%5B%5D=activities&geohash=ws0edemxcy4&latitude={}&limit=24&longitude={}&offset={}".format(latitude,longitude,a)
        a+=24
        ret = opener.open(url).read()

        html = re.findall(r‘‘‘"latitude".*?"longitude":.*?,"name":"(.*?)","next_business_time":".*?","only_use_poi":.*?,"opening_hours":‘‘‘, str(ret,‘utf8‘))
        for i in html:
            num += 1
            #print(i)
            if ‘72‘ in i:
                address=re.findall(r"latitude=(.*?)&limit=24&longitude=(.*?)&offset=",url)
                print("店铺名:{},排名{},定位地址坐标:纬度{}经度{}.".format(i,num,address[0][0],address[0][1]))
                flag=False
                
                break


if __name__ == ‘__main__‘:
    urlslist=["23.13445,113.32062",
              "23.12102,113.28648",
              "23.10144,113.32775"
    ]
    for i in urlslist:
        latitude, longitude=i.split(‘,‘)
        paiming(latitude,longitude)

执行结果:

技术分享

用python爬虫爬取饿了么外卖店铺排名

标签:浏览器   爬虫   python   version   

原文地址:http://9272317.blog.51cto.com/9262317/1833475

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!