我正试图从亚马逊网站上撕下一页。我陷入困境的部分是如何以整洁的方式获取数据。目前,我有一个名单,称为a,与亚马逊网页上的每一个项目。我的代码是:
import requests
from bs4 import BeautifulSoup
r = requests.get('https://www.amazon.de/s/ref=nb_sb_noss_2?__mk_nl_NL= %C3%85M%C3%85%C5%BD%C3%95%C3%91&url=search-alias%3Daps&field-keywords=processor')
page = BeautifulSoup(r.text, 'html.parser')
a = []
itemAmount = (len(page.find_all('div', class_='s-item-container')))
for x in range(itemAmount):
a.append(page.find_all('div', class_='s-item-container')[x].get_text("|", strip=True))
print(*a, sep='\n')
这将输出一个名为a的数组中的产品名称。它类似于:
Intel Core i7-8700K Processor (6x 3.7 GHz Taktfrequenz, 12 MB L3-Cache, Boxed ohne Kühler)|von|Intel|EUR 342,45|Prime|Kostenlose Lieferung möglich.|Andere Angebote|EUR 330,00|(102 gebrauchte und neue Artikel)|4,6 von 5 Sternen|110
AMD Ryzen 5 1600 Prozessor|von|AMD|EUR 144,90|Prime|Exklusiv für Prime-Mitglieder|Versandbereit in 1-2 Tagen.|Neueres Modell dieses Artikels anzeigen|4,6 von 5 Sternen|286
AMD FX-8350 FD8350FRHKBOX Prozessor (Black Edition, 8MB Cache, 4.00 GHz Turbo 4.20 GHz, Sockel AM3+) weiß|von|AMD|EUR 73,99|Prime|Kostenlose Lieferung möglich.|Andere Angebote|EUR 65,00|(55 gebrauchte und neue Artikel)|4,3 von 5 Sternen|356
Intel Core i5-7500 Prozessor (7. Generation, bis zu 3.80 GHz mit Intel Turbo-Boost-Technik 2.0, 6 MB Intel Smart-Cache)|von|Intel|EUR 184,99|Prime|Kostenlose Lieferung möglich.|Andere Angebote|EUR 177,63|(76 neue Artikel)|4,4 von 5 Sternen|30
AMD Ryzen 5 1400 Prozessor|von|AMD|EUR 117,90|Prime|Kostenlose Lieferung möglich.|Andere Angebote|EUR 109,82|(75 gebrauchte und neue Artikel)|4,6 von 5 Sternen|287
Intel Pentium G4400 BX80662G4400 Prozessor (3,30 GHz, 3 MB Intel Smart-Cache)|von|Intel|EUR 49,99|Prime|Kostenlose Lieferung möglich.|Andere Angebote|EUR 40,33|(88 gebrauchte und neue Artikel)|4,2 von 5 Sternen|19
Intel Core i9-7900X Prozessor, der X-Serie (bis zu 4,30 GHz, 13,75 MB Intel Cache|von|Intel|EUR 875,99|Prime|Kostenlose Lieferung möglich.|Nur noch 19 Stück auf Lager - jetzt bestellen.|Andere Angebote|EUR 569,00|(47 neue Artikel)|5 von 5 Sternen|8
Intel Core i7–7700 K 4,2 GHz QuadCore 8 MB Cache Prozessor|von|Intel|EUR 289,00|Prime|Kostenlose Lieferung möglich.|Nur noch 1 Stück auf Lager - jetzt bestellen.|Neueres Modell dieses Artikels anzeigen|4,1 von 5 Sternen|6
Intel Core i5-6400 2,7GHz Boxed CPU|von|Intel|EUR 160,99|Prime|Kostenlose Lieferung möglich.|Nur noch 1 Stück auf Lager - jetzt bestellen.|Andere Angebote|EUR 127,90|(64 gebrauchte und neue Artikel)|3,9 von 5 Sternen|20
AMD FD4300WMHKBOX Quad-Core Prozessor (3,8 GHz, AM3 + Sockel, 8 MB Cache, 95 Watt) mit Kühlkörper und Lüfter|von|AMD|EUR 49,99|Prime|Kostenlose Lieferung möglich.|Andere Angebote|EUR 42,11|(48 gebrauchte und neue Artikel)|Neueres Modell dieses Artikels anzeigen|3,9 von 5 Sternen|51
AMD Ryzen 7 1700 Prozessor mit Wraith-Spire-LED-Kühler|von|AMD|EUR 207,90|Prime|Kostenlose Lieferung möglich.|Andere Angebote|EUR 190,08|(82 gebrauchte und neue Artikel)|Neueres Modell dieses Artikels anzeigen|4,6 von 5 Sternen|286
Intel Core i5-7600K Prozessor der 7. Generation (bis zu 4.20 GHz mit Intel Turbo-Boost-Technik 2.0, 6 MB Intel Smart-Cache)|von|Intel|EUR 205,00|KOSTENFREIE Lieferung|Andere Angebote|EUR 198,09|(50 gebrauchte und neue Artikel)|Neueres Modell dieses Artikels anzeigen|4,2 von 5 Sternen|133
Intel Pentium G4560 3,50GHz Boxed CPU|von|Intel|EUR 56,99|Prime|Kostenlose Lieferung möglich.|Nur noch 12 Stück auf Lager - jetzt bestellen.|Andere Angebote|EUR 51,00|(54 neue Artikel)|4,5 von 5 Sternen|38
Intel Celeron Prozessor G3900 (2,80 GHz, 2 MB Intel Smart-Cache)|von|Intel|EUR 34,99|Prime|Kostenlose Lieferung möglich.|Andere Angebote|EUR 25,64|(63 gebrauchte und neue Artikel)|4,4 von 5 Sternen|28
现在我的问题是:如何从中获取数据?我在找名字和价钱。比如说:
Intel Core i7-8700K Processor | EUR 342,45
AMD Ryzen 5 1600 Prozessor | EUR 144,90
你明白要点了。这有可能吗?我找不到。 多谢了!你知道吗
您可以将字符串列表传递给^{} 模块,然后只获取每行的第一个和第四个条目。根据左括号拆分第一个条目:
数据结果:
另一种仅使用csv writer进行输出的方法(但不“分隔”字段,分隔符前后不添加空格):
sys.stdout
也可以是打开的文件句柄。你知道吗最“复杂”的部分是:
这只是取第一列,根据括号拆分,取第一部分(左部分),去掉前后空格。你知道吗
相关问题 更多 >
编程相关推荐