Warum bekomme ich nur die Ergebnisse der letzten URL? Die Idee ist, dass ich eine Liste der Ergebnisse beider URLs bekomme.Schleife im Python-Skript mit Xpath. Warum bekomme ich nur Ergebnisse von der letzten URL?
Auch mit dem Drucken in CSV bekomme ich immer eine leere Zeile. Wie entferne ich diese Zeile?
import csv
import requests
from lxml import html
import urllib
TV_category = ["_108-tot-127-cm-43-tot-50-,98952,501090","_128-tot-150-cm-51-tot-59-,98952,501091"]
url_pattern = 'http://www.mediamarkt.be/mcs/productlist/{}.html?langId=-17'
for item in TV_category:
url = url_pattern.format(item)
page = requests.get(url)
tree = html.fromstring(page.content)
outfile = open("./tv_test1.csv", "wb")
writer = csv.writer(outfile)
rows = tree.xpath('//*[@id="category"]/ul[2]/li')
for row in rows:
price = row.xpath('normalize-space(div/aside[2]/div[1]/div[1]/div/text())')
product_ref = row.xpath('normalize-space(div/div/h2/a/text())')
writer.writerow([product_ref,price])
Warum öffnen Sie die Datei innerhalb der Schleife? – jonrsharpe
** Zeilen ** sollte eine Liste sein, sonst würde es in jeder Schleife ersetzt werden. Eine andere Möglichkeit ist das Verschieben der letzten for-Schleife innerhalb der ersten. –
Wie meinst du Andrés? Kannst du es mir zeigen, ich kann es nicht herausfinden. Danke – Depekker