Соскоб работает (веб-сайт со списком из 6 продуктов), однако я хотел бы также добавить baseurl к фрейму данных в конце.В идеале в конце кадра данных.Меня не волнует название заголовка. В будущем у меня будет несколько URL в «URL».
Как я могу это сделать?
До:
0 1 2
1 product1 h
2 product2 t
3 product3 t
4 product4 p
5 product5 s
6 product6 :
После:
0 1 2
1 product1 baseurl
2 product2 baseurl
3 product3 baseurl
4 product4 baseurl
5 product5 baseurl
6 product6 baseurl
Код:
import requests
from bs4 import BeautifulSoup as bs
import pandas as pd
from selenium import webdriver
from pandas import DataFrame
urls = [
'this is where the site url is'
]
final = []
with requests.Session() as s:
for url in urls:
driver = webdriver.Chrome('/Users/Documents/python/Selenium/bin/chromedriver')
driver.get(url)
soup = bs(driver.page_source, 'lxml')
items = soup.select('.grid-item-content')
titles = [item.text.strip() for item in items]
baseurl = url
results = list(zip(titles,baseurl))
final.append([results])
df = pd.DataFrame(results)
df.to_csv(r'output.csv', sep=',', encoding='utf-8',index = False )
driver.quit()
печать (названия):
[product1,product2,product3,product4,product5,product6]
печать (baseurl):
[url] <--- only has one result