def printAddress(): for x in range(11): if x == 0: # print 'csv row' pass else: shop_cmd = "shop_address = driver.find_element_by_css_selector('#listhtml').find_element_by_xpath('//tr[" +str(x + 1) + "]/td[2]').text" exec(shop_cmd) # print shop_address shop_address_encode = shop_address.encode('utf-8') full_address = '上海市' + shop_address_encode # print shop_address_encode # 转码有问题,参数无法传入经纬度获取函数 AddressGeo_baidu_py2.getGeoForAddress(full_address)
url = 'http://kfc.xixik.com/shop/shanghai/mdl/' # url = "http://kfc.xixik.com/shop/shanghai/kfc" html = urllib2.urlopen(url).read().decode('gbk') bsObj = BeautifulSoup(html, "html.parser") # restaurant = bsObj.find('div', {'class': 'couponTitle1'}).find('a').get_text().encode('utf-8') # address = bsObj.find('div', {'class': 'couponAddress'}).get_text().encode('utf-8') # print restaurant # print address for shop in bsObj.findAll('div', {'class': 'shopRow'}): shopName = shop.find('div', {'class': 'couponTitle1'}).find('a').get_text().encode('utf-8') shopAddress = shop.find('div', {'class': 'couponAddress'}).get_text().encode('utf-8') shopAddressFull = '上海市' + shopAddress shopLocation = AddressGeo_baidu_py2.getGeoForAddress(shopAddressFull) lat = shopLocation[0] lng = shopLocation[1] csvFile = open('./mcd_geo.csv', 'a') try: writer = csv.writer(csvFile) writer.writerow((id, shopName, shopAddress, lat, lng)) id += 1 finally: csvFile.close() # print "餐厅:%s, 地址:%s" %(shopName, shopAddress)