博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python爬虫系列(3.7-使用 bs4 爬取获取贵州农产品)
阅读量:6928 次
发布时间:2019-06-27

本文共 1151 字,大约阅读时间需要 3 分钟。

一、爬取数据步骤

1、

2、实现代码

import requests

from bs4 import BeautifulSoup

class Food(object):

def __init__(self):

self.url = 'http://www.gznw.gov.cn/priceInfo/getPriceInfoByAreaId.jx?areaid=22572&page=1'

self.headers = {

'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.36',

}

def get_html(self):

"""

抓取网页

:return:

"""

response = requests.get(url=self.url, headers=self.headers)

if response.status_code == 200:

return response.text

return ''

def down_data(self):

"""

下载数据

:return:

"""

soup = BeautifulSoup(self.get_html, 'lxml')

table = soup.find('table', attrs={'class': 'table table-hover'})

trs = table.find('tbody').find_all('tr')

food_list = []

for tr in trs:

food_dict = {}

tds = tr.find_all('td')

name = tds[0].get_text()

price = tds[1].get_text()

address = tds[3].get_text()

time = tds[4].get_text()

food_dict['name'] = name

food_dict['price'] = price

food_dict['address'] = address

food_dict['time'] = time

food_list.append(food_dict)

return food_list

if __name__ == "__main__":

foo = Food()

print(foo.down_data())

转载于:https://juejin.im/post/5be3f145f265da61616e2f6f

你可能感兴趣的文章
洛谷 P1975 [国家集训队]排队 Lebal:块内排序+树状数组
查看>>
Linux Socket 网络编程 (IBM网站)
查看>>
Mybatis表关联一对多
查看>>
oracle 归档日志总结
查看>>
java注解
查看>>
java8 peek
查看>>
config文件中可以配置查询超时时间
查看>>
用django写个CMS系统
查看>>
练习13.13的一个有意思的现象
查看>>
一个可供小团队参考的微服务落地实践
查看>>
jQuery权威指南-插入节点
查看>>
button 美化
查看>>
java笔记之byte的面试题案例分析
查看>>
iOS开发之GCD同步主线程、异步主线程
查看>>
leetcode217 Contains Duplicate
查看>>
分享Silverlight/WPF/Windows Phone/HTML5一周学习导读(2月6日-2月12日)
查看>>
Silverlight/Windows8/WPF/WP7/HTML5周学习导读(9月17日-9月23日)
查看>>
linux常规网卡配置正确,但是出不了路由的解决方法
查看>>
一步步构建“半自动”数据分页模块
查看>>
ionic 调用手机的打电话功能
查看>>