Python을 사용하여 Meet-Up API 정리
이 중 하나는 이벤트 집합 사이트를 만들기 위해 Meet-up 및 Eventbrite API를 삭제하는 것과 관련이 있습니다.
이것은 몇 가지 개념을 채택할 수 있는 좋은 프로젝트이다.이 아이디어로 경보 시스템을 만들 수 있습니다. 사용자가 API 키를 입력하여 관심 있는 로컬 이벤트를 추적할 수 있습니다.어떤 리얼리티가 도착하기 전에 유행할지 추적 지표를 통해 예측할 수 있는 사이트를 개발할 수 있다.
솔직히 말하면 API는 상당히 많은 데이터를 제공하고 심지어는 구성원의 이름을 제공할 수 있다. (구성원이 신분 검증을 거쳤다면 전자메일도 있다고 한다.)이거 재밌어요. - 이 데이터를 당신의 사이트의 기초로 사용할 수 있어요!
시작하기
이 프로젝트를 시작하려면 백엔드 구축에 필요한 기본 부분을 분해하십시오.필요한 경우:
반대로 설정을 검사하고 업데이트하기만 하면 됩니다.
그럼에도 불구하고, 우리는 즉각 완전히 추상적인 유형을 개발하는 것을 건의하지 않는다.처음부터 하드코딩 변수가 없는 완전한 추상적인 클래스를 구축하는 것은 어려울 수도 있다.만약 어떤 오류가 발생하거나 작용하지 않는다면 추상층의 원인으로 인해 디버깅은 더욱 어려울 것이다.
우리는 효과적인 작품을 개발하는 것부터 시작할 것이다.
당신이 해야 할 첫 번째 결정은 삽 운반기가 데이터를 어디에 놓을지 하는 것입니다.우리는 매일 자신의 폴더가 있는 폴더 구조를 만들고 있습니다.
서버, S3 또는 원본 파일 구조와 유사한 일반 폴더를 사용할 수 있습니다.JSON 파일에 저장된 원본 데이터를 쉽게 저장할 수 있습니다.다른 데이터 저장 방법, 예를 들어 csv와tsv는 데이터를 포맷하여 설명하는 방식으로 버려진다.
기본 각본을 봅시다.코드 라이브러리를 어떻게 더 잘 설정하고 재구성해서 더 잘 개발할 수 있는지 생각해 보세요.
import requests
import time
import json
import sys
import codecs
import csv
class MeetUpScraper:
api_call_type=""
config_file="meet_up_config.json"
def get_results(self,params,config_data):
request=requests.get(config_data[self.api_call_type]['api_endpoint'],params=params)
data=request.json()
return data
def main(self,p_config_file):
cities=[("Seattle","WA")]
api_key="APIKEY"
for (city,state) in cities:
per_page=200
results_we_got = per_page
offset=0
while(results_we_got==per_page):
response = self.get_results(
{"sign":"true","country":"US","city":city,"state":state,"radius":10,"key":api_key,"page":per_page,"offset":offset}
,p_config_file
)
time.sleep(1)
offset+=1
data={}
results_we_got = response['meta']['count']
data = response['results']
export_file= open("data/data_"+self.api_call_type+"_"+str(offset)+".txt","w")
json.dump(data,export_file)
export_file.close()
def __init__(self,api_call_type):
self.api_call_type=api_call_type
config=open(self.config_file)
config_data=json.load(config)
self.main(config_data)
MeetUpScraper("get_event") #for testing
가장 중요한 부분은 API 키입니다.테스트할 때 자신의 API 키를 하드코딩하기 쉽다.그러나 최종 목표가 여러 사용자가 이 데이터에 접근할 수 있도록 하는 것이라면 API 키를 설정해야 합니다.
업데이트할 다음 부분은 추출 중인 데이터에 대한 하드 인코딩 인용입니다.이 하드코딩은 코드가 하나의 API 호출과 함께 작동할 수 있도록 제한한다.하나의 예는 우리가 어떻게 서로 다른 단점을 추출하고 되돌아오는 필드에서 추출하고자 하는 필드를 인용하는가입니다.
이 예에서 우리는 단지 JSON에 모든 내용을 저장할 뿐이다.까다롭기를 원할 수도 있습니다. 이 경우, 모든 필드에 어떤 열을 추가하기를 원할 수도 있습니다.
예:
{
"get_group":
{
"api_endpoint":"http://api.meetup.com/2/groups"
},
"get_event":
{
"row_list":
["country", "city", "created", "rating", "description", "rating", "join_mode", "members", "lon", "lat", "id", "state","urlname"],
"insert_script":
"INSERT into raw_meet_up_3 (country, city, created, rating, description, rating_2,join_mode, members, lon, lat, id, state,urlname) VALUES( %s )",
"api_endpoint":"http://api.meetup.com/2/open_events"
}
}
이렇게 하면 어떤 API 이벤트를 사용할지 모르는 스크레이퍼를 만들 수 있습니다.그것은 코드를 제외하면 유지보수가 더욱 쉽다.예를 들어, Meet up에서 API 끝점이나 열 이름을 변경하면 어떻게 됩니까?알겠습니다. 10개의 다른 코드 파일에 들어갈 필요가 없습니다. 프로필을 변경하기만 하면 됩니다.
다음 단계는 모든 데이터를 불러오고 저장하는 데이터베이스와 ETL을 만들고, JSON 파일의 데이터를 자동으로 조작 스타일 데이터베이스로 해석하는 시스템이다.이 데이터베이스는 관심 있는 이벤트를 추적하는 데 사용할 수 있습니다.또한 데이터 창고를 창설하면 추적 지표를 도울 수 있다.
아마도 당신이 흥미를 느끼는 것은 활동이 사람을 끌어당기는 속도나 활동 판매 속도가 얼마나 빠른지 하는 것이다.
이를 바탕으로 어떤 종류의 설명이나 그룹이 슬롯을 빨리 사용할지 분석할 수 있습니다.
개인적으로는 재미있는 분석을 많이 할 수 있다.
앞으로 몇 주와 몇 달 동안 우리는 이 프로젝트를 계속 개발할 것이다.이것은 데이터베이스를 구축하는 것을 포함하고 분석을 할 수 있다. 등등!
우리는 네가 이 문장을 좋아하길 바란다.
만약 당신이 이 소프트웨어 공학에 관한 동영상을 좋아한다면, 이 동영상들도 고려해 보세요!
The Advantages Healthcare Providers Have In Healthcare Analytics
142 Resources for Mastering Coding Interviews
Learning Data Science: Our Top 25 Data Science Courses
The Best And Only Python Tutorial You Will Ever Need To Watch
4 Must Have Skills For Data Scientists
What Is A Data Scientist
Reference
이 문제에 관하여(Python을 사용하여 Meet-Up API 정리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/seattledataguy/using-python-to-scrape-the-meet-up-api-316p텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)