首先找到小米8商品的链接:https://item.jd.com/7437788.html
然后找到其配置信息的标签,我们找到其配置信息的标签为 <div class="ptable">
然后再分析其配置信息的页面的规律,我们发现都是dl中包含了dt和dd,而一个dt对应的一个dd,dt对应的是参数,dd对应的是参数具体的值
下面是源代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
import requests from bs4 import beautifulsoup from pandas import series from pandas import dataframe response = requests.get( "https://item.jd.com/7437788.html" ) html = response.text soup = beautifulsoup(html, "html.parser" ) divsoup = soup.find( "div" ,attrs = { "class" , "ptable" }) ##找到其配置信息的标签 data = dataframe(columns = [ "参数" , "值" ]) #定义一个二元的dataframe dls = divsoup.find_all( "dl" ) for dl in dls: dts = dl.find_all( "dt" ) dds = dl.find_all( "dd" ) if len (dts) = = len (dds): for i in range ( len (dts)): f = dts[i].gettext(); p = dds[i].gettext(); data = data.append(series([f,p],index = [ "参数" , "值" ]),ignore_index = true); print (data) |
这是最终抓取到的配置信息,一共有64行,这里我就不一一列举出来了
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/qq_36119192/article/details/83050274