鱼C论坛

 找回密码
 立即注册
查看: 2389|回复: 2

爬取地图某个区域的教育或者其他数据,运行的结尾不太满意,就帮忙!

[复制链接]
发表于 2020-8-25 14:15:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. # -*-coding:UTF-8-*-
  2. '''根据行政区域查询'''
  3. import json
  4. import csv
  5. import sys
  6. import requests  # 导入requests库,这是一个第三方库,把网页上的内容爬下来用的

  7. ty = sys.getfilesystemencoding()
  8. # print(ty)#这个可以获取文件系统的编码形式
  9. import time

  10. las = 1  # 给las一个值1
  11. ak = 'Eugu5mRqawvsoNRwl9VOmzl0bOOB0eip'
  12. # push=r'D:\python'
  13. out = open('school.csv', 'a', newline='')
  14. csv_write = csv.writer(out, dialect='excel')
  15. print(time.time())
  16. print('开始')
  17. urls = []  # 声明一个数组列表
  18. que = '美食'
  19. ta = '餐厅,火锅,食堂'

  20. for i in range(0, 20):
  21.     page_num = str(i)
  22.     url = 'http://api.map.baidu.com/place/v2/search?query=' + que + '&' \
  23.                                                                     'tag=' + ta + '&region=宁波&page_size=20&page_num=' + str(
  24.         page_num) + '&output=json&ak=' + ak
  25.     urls.append(url)
  26. # urls.append(url)的意思是,将url添加入urls这个列表中。
  27. # f=open(r'D:\python\guiyangxuexiao.csv','a',encoding='utf-8'
  28. print('url列表读取完成')
  29. for url in urls:
  30.     time.sleep(5)  # 为了防止并发量报警,设置了一个5秒的休眠。
  31.     print(url)
  32.     html = requests.get(url)  # 获取网页信息
  33.     data = html.json()  # 获取网页信息的json格式数据
  34.     print(data)
  35.     for item in data['results']:
  36.         jname1 = item['province']
  37.         jname2 = item['city']
  38.         jname3 = item['area']
  39.         jname4 = item['name']
  40.         jname = jname1 + jname2 + jname3 + jname4
  41.         j_uid = item['uid']
  42.         jstreet_id = item.get('street_id')
  43.         jlat = item['location']['lat']
  44.         jlon = item['location']['lng']
  45.         jaddress = item['address']
  46.         jphone = item.get('telephone')
  47.         j_str = (jname, j_uid, jstreet_id, str(jlat), str(jlon), jaddress, jphone)
  48.         print(j_str)
  49.         csv_write.writerow(j_str)
  50.         print("write over")
  51.     #  f.write(j_str)
  52.     print(time.time())
  53. # f.close()
  54. print('完成')
复制代码
a875c73b2994c8f0968ad8f86aa0c81.png
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-8-25 14:17:51 | 显示全部楼层
此帖仅作者可见
小甲鱼最新课程 -> https://ilovefishc.com

使用道具 举报

发表于 2020-8-25 14:18:55 | 显示全部楼层
此帖仅作者可见
小甲鱼最新课程 -> https://ilovefishc.com

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-26 03:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表