dlucode7 2018-09-15 09:24 采纳率: 0%
浏览 2638

Python 3 如何用BeautifulSoup抓取配套的超链接?

目标是在这个天猫搜索页面上抓取与产品名配套的产品页超链接

 <p class="productTitle">

<p class="productPrice">

<em title="99.00"><b>¥</b>99.00</em>

 </p><a href="//detail.tmall.com/item.htm?id=538491424201&amp;skuId=3921901643206&amp;user_id=826813153&amp;cat_id=55778004&amp;is_b=1&amp;rn=fe7996c620a7e58ef91046c7b2ef0d24" target="_blank" title="TATA木门 简约卧室门实木复合门卫生间门定制室内厨房门特权订金" data-p="1-11" atpanel="1-11,538491424201,50022358,,spu,1,spu,826813153,,,">
TATA<span class="H">木门</span> 简约卧室门实木复合门卫生间门定制室内厨房门特权订金
</a>

</p>

我写的抓取 产品名 和 价格的爬虫代码如下

import requests 
import bs4 
import re 
import pandas as pd

url='https://list.tmall.com/search_product.htm?spm=a220m.1000858.1000724.1.171973e4CgRths&cat=55778004&q=%C4%BE%C3%C5&sort=s&style=g&from=.detail.pc_1_searchbutton&industryCatId=55778004#J_Filter'
response = requests.get(url).text

soup = bs4.BeautifulSoup(response,'html.parser')
name=[i.text.strip() for i in soup.findAll(name='p',attrs = {'class':'productTitle'})]
sale_price =  [float(i.text[2:-1]) for i in soup.findAll(name='p',attrs = {'class':'productPrice'})]


jiaju = pd.DataFrame({'商品名':name,'卖价':sale_price,'
jiaju

如何用soup抓取和商品名和卖价配套的产品页超链接?

  • 写回答

2条回答

  • kun_hello 2018-09-18 03:12
    关注

    去参考BeautifulSoup的文档吧
    先获取所有的商品列表 循环 然后根据里面的class 或者正则取链接、名称、价格

    评论

报告相同问题?

悬赏问题

  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法
  • ¥15 可否在不同线程中调用封装数据库操作的类