2020年小结-附爬虫小记

2020年小结-附爬虫小记

有个朋友让帮忙写个爬虫,才发现有点生疏了。花了点时间写了一下,想要记录在CSDN,才发现已经有一年没有写过东西了,感慨良多。2020磕磕绊绊忙于毕业,找工作,也成为了北漂一族,总体还算顺遂。废话结束,步入正题。

  1. get方式:不同页的数据可以在url中显示,通过requests访问不同的url得到数据。但如果访问次数多的话,不同的网站可能会有限制,就需要伪造user-agent或使用sleep。
  2. 浏览器插件模拟正常访问:使用selenium的这种方法主要是为了解决requests无法执行javaScript代码的问题,配合浏览器插件进行爬虫。一些小的网站都适用,但对于美团之类的网站把selenium做了限制,数据在前端采集后是做了去标识化处理的。
  3. 直接获取JS数据文件:还有一些网站的数据是从js文件中有选择的进行展示的,利用 chrome开发者工具Sources面板功能,查找当前展示数据对应的js文件,会有事半功倍的效果。在这里插入图片描述
  4. post方式:通过post不同的数据格式,得到返回的数据文件。我主要解决的是日期控件的问题。
    在这里插入图片描述
# coding=utf-8
import requests
import datetime
#爬取商务部农副产品数据
post_url = "https://cif.mofcom.gov.cn/cif/getEnterpriseListForDate.fhtml"
# 现在的时间
now = datetime.datetime.now()
# 递减的时间
delta = datetime.timedelta(days=-1)
offset = now
# 当日期减少到10年后的日期,循环结束
while str(offset.strftime('%Y-%m-%d')) != '2020-12-27':
    offset += delta
    data = {
        'cateId': '170020 ',
        'searchDate': str(offset.strftime('%Y-%m-%d'))
    }
    tqHtml = requests.post(post_url, data=data)
    res = tqHtml.text
    print res
    print "------------------------------------------------------"

在这里插入图片描述
对一个网站爬虫,还是不能急于上手,摸清楚页面的可以提供的信息,再找到合适的方法。磨刀不误砍柴工。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值