2017-05-24 6 views
0

Ich schreibe ein Programm, das Produktname, es Parameter erhält und speichert es in eine Textdatei für jetzt. Seite ist http://www.euro.com.pl/pralki,strona-1.bhtml Ich schrieb dies:Python: Speichern von Parametern und Produkt eins nach dem anderen

`url = "http://www.euro.com.pl/pralki,strona-1.bhtml" 
source_code = requests.get(url) 
plain_text = source_code.text 
soup = BeautifulSoup(plain_text, "html.parser") 
for product in soup.find_all('div', {'class': 'product-main'}): 
    for prod in soup.find_all('h2', {'class': 'product-name'}): 
     temp.extend(prod.stripped_strings) 
     for param in soup.find_all('div', {'span': 'attribute-value'}): 
      temp.extend(param.stripped_strings)` 

Aber es gibt mir eine Textdatei mit mehr als 200k Zeilen! Kann nicht herausfinden, wie ich es reparieren oder von Anfang an schreiben kann.

+0

Was wollen Sie eigentlich? Was ist dein Problem ? –

+0

Ich möchte nur den Produktnamen und seine Parameter in einer Datei von dieser Webseite in eine Datei speichern. – Wakun

+0

Macht es das nicht? –

Antwort

0

Daraus:

>>> len(soup.find_all('div', {'class': 'product-main'})) 
30 
>>> len(soup.find_all('h2', {'class': 'product-name'})) 
30 

Ich schließe daraus, dass es 30 Fälle von product und 30 Fälle von prod so dieser Linie

temp.extend(prod.stripped_strings) 

wird 900-mal ausgeführt. Von Ihrer Beschreibung des Problems denke ich, dass Sie erwarten, dass es 30 Mal ausgeführt wird.

+0

Ok, jetzt sehe ich, was ich falsch gemacht habe, kann aber immer noch nicht herausfinden, wie es richtig gemacht wird. – Wakun

Verwandte Themen