无法定义soup.find_all进行抓取

时间:2019-05-06 00:44:03

标签: python web-scraping beautifulsoup

需要帮助定义适当的HTML代码以进行网页抓取。

我有一个.csv,其中有1000多个网址,用于来自同一站点的餐厅菜单,并且需要为每个餐厅添加带有信息的额外列。问题是我只需要一些菜单。这是我的列表列表的一部分:

['subdomain', 'name', 'url']
['https://www.pedidosya.com.ar/restaurantes/buenos-aires/recoleta/empanadas-delivery?bt=RESTAURANT&page=1', 'Cümen-Cümen Empanadas Palermo', 'https://www.pedidosya.com.ar/restaurantes/buenos-aires/cumen-cumen-empanadas-palermo-menu']
['https://www.pedidosya.com.ar/restaurantes/buenos-aires/recoleta/empanadas-delivery?bt=RESTAURANT&page=1', 'El Maitén Empanadas - Al horno o fritas', 'https://www.pedidosya.com.ar/restaurantes/buenos-aires/el-maiten-empanadas-al-horno-o-fritas-menu'] 

所以我需要遍历每个URL寻找:

a)信息:

<span class="new_rating box_split_review_04">4.9</span>

因此在该示例中,它的等级= 4.9。

b)我还需要名称中带有“ empanada”的每个菜单项。问题是某些菜单添加了一些额外的东西,例如:Empanadas al horno,Empanadas fritas等。我需要的是每种empanada的价格:

<div class="price">
<span class="discounted-price">$49,99</span>
<span class="has-discount">$62,49</span>
</div>

因此输出应类似于:(另存为.CSV)

['subdomain', 'name', 'url', 'rating', 'empanada_price']
['https://www.pedidosya.com.ar/restaurantes/buenos-aires/recoleta/empanadas-delivery?bt=RESTAURANT&page=1', 'Cümen-Cümen Empanadas Palermo', 'https://www.pedidosya.com.ar/restaurantes/buenos-aires/cumen-cumen-empanadas-palermo-menu', '4,9', '$49,99']

谢谢!

0 个答案:

没有答案