其他分享
首页 > 其他分享> > 14-bs4基本使用---爬取菜价

14-bs4基本使用---爬取菜价

作者:互联网

首先要安装bs4
pip install bs4

from bs4 import BeautifulSoup
import requests
import csv

url = "http://www.maicainan.com/offer/show/id/3242.html"
resp = requests.get(url)

f = open("price.csv", "w")
csvWriter = csv.writer(f)

# 解析数据
# 1、把页面源代码交给BeautifulSoup进行处理,生成bs对象
page = BeautifulSoup(resp.text, "html.parser")  # 后一个参数是用于指定html解析器
# 2、从bs4对象中查找数据
# 方法一:find(标签,如果有多个相同标签可以添加 属性=值)     只查找第一个
# 方法二:find_all(标签,如果有多个相同标签可以添加 属性=值)   全部查找

# table = page.find("table", class_="hq_table")  # class是关键字,通过加上下划线来区别关键字
table = page.find_all("table", attrs={"class": "hq_table"})  # 和上一行是一个意思,不过可以避免关键字class

# 拿到所有的数据行
trs = table.find_all("tr")[1:]

for tr in trs:  # 每一行
    tds = tr.find_all("td")  # 拿到每一行中所有的td
    name = tds[0].text
    low = tds[1].text
    avg = tds[2].text
    high = tds[3].text
    kind = tds[4].text
    csvWriter.writerow([name, low, avg, high, kind])
    # print(name, low, avg, high, kind)

resp.close()
f.close()
print("over")

标签:14,bs4,text,class,爬取,tds,table,find
来源: https://www.cnblogs.com/morehair/p/15679540.html