Я пытаюсь создать веб-искатель. В настоящее время я просто тестирую его на Youtube, но я намерен расширить его, чтобы сделать это позже. Пока я все еще учусь.Python соскабливание и вывод на excel
В настоящее время я пытаюсь экспортировать информацию в csv, код ниже - это то, что у меня есть на данный момент, и казалось, что он отлично работает, когда я запускал его, чтобы вытащить описания названий. Однако, когда я добавил в код, чтобы получить «представления» и «любит», он испортил выходной файл, потому что в них есть запятые.
Кто-нибудь знает, что я могу сделать, чтобы обойти это?
import urllib2
import __builtin__
from selenium import webdriver
from selenium.common.exceptions import NoSuchAttributeException
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time
from time import sleep
from random import randint
from lxml import etree
browser = webdriver.Firefox()
time.sleep(2)
browser.get("https://www.youtube.com/results?search_query=funny")
time.sleep(2)
browser.find_element_by_xpath("//*[@id='section-list']/li/ol/li[1]/div/div/div[2]/h3/a").click()
time.sleep(2)
url = browser.current_url
title = browser.find_element_by_xpath("//*[@id='eow-title']").text
views = browser.find_element_by_xpath("//*[@id='watch7-views-info']/div[1]").text
likes = browser.find_element_by_xpath("//*[@id='watch-like']/span").text
dislikes = browser.find_element_by_xpath("//*[@id='watch-dislike']/span").text
tf = 'textfile.csv'
f2 = open(tf, 'a+')
f2.write(', '.join([data.encode('utf-8') for data in [url]]) + ',')
f2.write(', '.join([data.encode('utf-8') for data in [title]]) + ',')
f2.write(', '.join([data.encode('utf-8') for data in [views]]) + ',')
f2.write(', '.join([data.encode('utf-8') for data in [likes]]) + ',')
f2.write(', '.join([data.encode('utf-8') for data in [dislikes]]) + '\n')
f2.close()
У Python есть модуль под названием 'csv', чтобы обеспечить удобный интерфейс для чтения и записи в CSV-файлы. –
Не могли бы вы дать мне пример того, как я могу использовать это с тем, что я создал? Я пытался использовать это раньше, но я не мог справиться с этим. Было бы очень признательно. Благодаря! – BubblewrapBeast