data dict to list and write header then list
This commit is contained in:
parent
9d7edf3e9a
commit
1adcf0b224
@ -39,30 +39,16 @@ def product_description(soup):
|
|||||||
#create a dict with all information for writing loop later
|
#create a dict with all information for writing loop later
|
||||||
# /!\ don't know if that's the best way
|
# /!\ don't know if that's the best way
|
||||||
def get_data(soup, url):
|
def get_data(soup, url):
|
||||||
info= {}
|
info = [url, product_information(soup)['UPC'], get_title(soup), product_information(soup)['Price (incl. tax)'], product_information(soup)['Price (excl. tax)'], product_information(soup)['Availability'], product_description(soup), "TODO", product_information(soup)['Number of reviews'], get_image_url(soup, url)]
|
||||||
info = {
|
|
||||||
'product_page_url': url,
|
|
||||||
'universal_ product_code (upc)': product_information(soup)['UPC'],
|
|
||||||
'title': get_title(soup),
|
|
||||||
'price_including_tax': product_information(soup)['Price (incl. tax)'],
|
|
||||||
'price_excluding_tax': product_information(soup)['Price (excl. tax)'],
|
|
||||||
'number_available': product_information(soup)['Availability'],
|
|
||||||
'product_description': product_description(soup),
|
|
||||||
'category': "TODO",
|
|
||||||
'review_rating': product_information(soup)['Number of reviews'],
|
|
||||||
'image_url': get_image_url(soup, url)
|
|
||||||
}
|
|
||||||
return info
|
return info
|
||||||
|
|
||||||
#write the file
|
#write the file
|
||||||
def data_output(info, file):
|
def data_output(info, file):
|
||||||
fieldnames = ['product_page_url', 'universal_ product_code (upc)', 'title', 'price_including_tax', 'price_excluding_tax', 'number_available', 'product_description', 'category', 'review_rating', 'image_url']
|
fieldnames = ['product_page_url', 'universal_ product_code (upc)', 'title', 'price_including_tax', 'price_excluding_tax', 'number_available', 'product_description', 'category', 'review_rating', 'image_url']
|
||||||
with open('output.csv', 'w') as csv_file:
|
with open(file, 'w') as csv_file:
|
||||||
writer = csv.DictWriter(csv_file, fieldnames=fieldnames )
|
writer = csv.writer(csv_file, delimiter=',')
|
||||||
|
writer.writerow(fieldnames)
|
||||||
writer.writeheader()
|
writer.writerow(info)
|
||||||
for line in info:
|
|
||||||
writer.writerow(line)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -80,6 +66,7 @@ def main():
|
|||||||
print(test['Availability'])
|
print(test['Availability'])
|
||||||
|
|
||||||
info=get_data(soup, url)
|
info=get_data(soup, url)
|
||||||
|
print(info)
|
||||||
data_output(info, 'output.csv')
|
data_output(info, 'output.csv')
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
Loading…
x
Reference in New Issue
Block a user