import pymysql import latlonChange as llc import pandas as pd import requests import json

class getBiz(object):

def craw(self, url):
    response = requests.get(url)

    if response.status_code == 200:
        json_obj = json.loads(response.text)
        self.analysisJson(json_obj)
    else:
        print("Request failed!")

def analysisJson(self, json_obj):
    datas = json_obj['data']['bubbleList']

    for data in datas:
        border = data['border']
        latlons = border.split(";")
        re = ""
        for latlon in latlons:
            latlonArr = latlon.split(",")
            gglat, gglon = llc.bd09_to_gcj02(float(latlonArr[0]), float(latlonArr[1]))
            re += str(gglat) + ' ' + str(gglon) + '\n'
        
        flat, flon = llc.bd09_to_gcj02(float(latlons[0].split(",")[0]), float(latlons[0].split(",")[1]))
        print(re + str(flat) + ' ' + str(flon))
        print('==================')

def into_mysql(self, data):
    conn = pymysql.Connect(
        host='127.0.0.1',
        user='root',
        password='root',
        db='baike',
        port=3307,
        charset='utf8mb4'
    )
    try:
        cursor = conn.cursor()

        sql = 'insert into `baike_info`(`title`,`summary`, `url`)values(%s,%s,%s)'
        cursor.execute(sql, (data['title'], data['summary'], data['url']))
        conn.commit()
    finally:
        conn.close()

if name == 'main': filename = 'bizList.csv' names = ['url'] data = pd.read_csv(filename, names=names) df = pd.DataFrame(data) for index, row in df.iterrows(): print(row['url']) url = row['url'] getBiz = getBiz() getBiz.craw(url

import pymysqlimport latlonChange as llcimport pandas as pdimport requestsimport jsonclass getBizobject def crawself url response = requestsgeturl if responsestatus_code == 200

原文地址: https://www.cveoy.top/t/topic/hZcq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录