2017-01-15 1 views
0

Новое на python и пытается очистить мой первый сайт от googling. Я думаю, что я сделал ошибку с необычной ошибкой.Python Web Scraping: не может объединить объект, не связанный с NDFrame.

import requests 
import pandas as pd 
from bs4 import BeautifulSoup 

url="http://property.sulekha.com/apartments-flats-in-pimpri-chinchwad-general-pune-for-sale" 
r = requests.get(url) 
soup = BeautifulSoup(r.content) 

g_data = soup.find_all("div",{"class":"title"}) 

for item in g_data: 
     Desp = item.contents[1].text 
     Location = item.contents[5].text 
     Address = item.contents[3].text 
     #Print Desp,Location,Address 
     #Problem is over here,The result set that i am getting is quite scatter. I want to put it into 
     #pandas object and then output to excel. 
     output_df = pd.concat([Desp,Location,Address]) 

Что я пытаюсь сделать? любой набор данных, который я получаю, хочу экспортировать его в Excel.

+0

Что такое Desp? Расположение и адрес совпадают. – MYGz

ответ

1

Для написания, чтобы преуспеть просто сделать df.to_excel('file_name', index=None)

Проверьте это:

import requests 
import pandas as pd 
from bs4 import BeautifulSoup 

url="http://property.sulekha.com/apartments-flats-in-pimpri-chinchwad-general-pune-for-sale" 
r = requests.get(url) 
soup = BeautifulSoup(r.content) 
df = pd.DataFrame(columns = ['Desp', 'Location', 'Address']) 
g_data = soup.find_all("div",{"class":"title"}) 
for item in g_data: 
    Desp = ' '.join(item.contents[1].text.split()) 
    loc = ' '.join(item.contents[5].text.split()).split(',') 
    Location = loc[0][9:] 
    Address = loc[1] 
    df = df.append({'Desp':Desp, 'Location':Location, 'Address': Address}, ignore_index=True) 

df.head() 

Выход:

enter image description here