파이썬 파충류 - 미단음식 데이터 얻기

1414 단어
요 며칠 동안python 파충류와 접촉하여 인터넷의 일부 블로그에 아래 코드를 써서 미단 인터넷의 음식 데이터를 캡처하여 기록하였다.

#from bs4 import BeautifulSoup #  html xml    
import urllib.request
import csv
import re
import json


csv_file = open("rent.csv","w",encoding='utf-8') 
csv_writer = csv.writer(csv_file, delimiter=',')

class Spider:
	def loadPage(self,page):
		url = "http://gz.meituan.com/meishi/pn"+str(page)+"/"

		#user-Agent 
		user_agent="Mozilla/5.0 (compatible; MSIE 9.0; Windows NT6.1; Trident/5.0"
		headers = {"User-Agent":user_agent}
		req = urllib.request.Request(url,headers = headers)
		response = urllib.request.urlopen(req)
		html =str(response.read(),'utf-8')

		
		#          :{"poiId":xxx}
		#re.S     re.S,                  ,              
		#    re.S,                  
		
		pattern = re.compile(r'{"poiId":.*?}',re.S)
		item_list = pattern.findall(html)#    
			
		#dictinfo = json.loads(item_list[0])#         
		
		list = []#       
		
		for data in item_list:
				dictinfo = json.loads(data)
				csv_writer.writerow([dictinfo["title"],dictinfo["address"],dictinfo["avgScore"],dictinfo["avgPrice"]])
		
		

if __name__ == "__main__":
	mySpider = Spider()
	
	for i in range(1,33):
		print("fecth:Page"+str(i))
		mySpider.loadPage(i)
		
	csv_file.close()
	

좋은 웹페이지 즐겨찾기