Python范围和回报

时间:2016-04-14 15:59:55

标签: python web-scraping python-3.4

大家。 我正在开发一个从互联网上收集数据的程序。在这个程序中,我已经从XML文件中读取了一个字典列表和一半数据。另一半我要从互联网上刮掉。 这是收集数据并创建字典的函数:

def list_names(soup):
    institutions = []

    for name, initials, city, state, adress, neighborhood, zip_code  in zip(soup.find_all('data')[7::7], soup.find_all('data')[8::7], soup.find_all('data')[9::7], soup.find_all('data')[10::7], soup.find_all('data')[11::7], soup.find_all('data')[12::7], soup.find_all('data')[13::7]):
        institutions.append({
                'name': name.get_text(),
                'initials': initials.get_text(),
                'city_state': city.get_text() + ' ' + state.get_text(),
                'adress': 'Brasil ' + adress.get_text() + ' ' + neighborhood.get_text(),
                'cep': zip_code.get_text(), 
                'll_name': {
                'status_request': 0,
                'status_coordinates': 0,
                'latitude': 0,
                'longitude': 0
                },
                'll_name_init': {
                'status_request': 0,
                'status_coordinates': 0,
                'latitude': 0,
                'longitude': 0
                },
                'll_end': {
                'status_request': 0,
                'status_coordinates': 0,
                'latitude': 0,
                'longitude': 0
                },
            })

    return institutions

这个函数使搜索和接收字典列表作为参数:

def search_coordinates(institutions):
  for name in institutions:
    request = requests.get('http://www.google.com/search', params={'q', name['Name']})
    name['ll_name'] = scrape_coordinates(request.content)  

我想要的是函数scrape_coordinates用值填充键ll_name。状态和坐标。问题是我不知道我必须返回什么,或者我是否需要使用范围。我已经测试了我的程序,它很好地找到了坐标等等。我只需要知道如何返回一个字典来填充这个或我还有什么。

我在Linux上使用Python 3.4(Ubuntu 14.04)导入RequestsBeautifulSoup4

0 个答案:

没有答案