鱼C论坛

 找回密码
 立即注册
查看: 936|回复: 11

关于批量输出网页地址的写法,年月日 +1 的写法 求助

[复制链接]
发表于 2018-5-17 16:24:10 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 要学习 于 2018-5-17 16:58 编辑

各位老师,请教一个基础问题:

假设,
我要批量输出以下网址:
http://www.baidu.com/k_20160425066_20160426077_sN.html
http://www.baidu.com/k_20160426066_20160427077_sN.html
http://www.baidu.com/k_20160427066_20160428077_sN.html


已经写了一个date函数,

def getUrl(self, date):
    url = r'http://www.baidu.com/k__'  +  date + '066_'
    print url

代码能实现前面一部分。

即,

http://www.baidu.com/k_20160425066_
http://www.baidu.com/k_20160426066_
http://www.baidu.com/k_20160427066_

后面的一部分网址如何写才行?

可变的部分就是:
就是年份月份不变,日期 + 1.

直接改成     url = r'http://www.baidu.com/k__'  +  date + '066_' + (date+1)
不行。


我尝试写都报错。。
请各位老师指点迷津
谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-5-17 16:35:44 | 显示全部楼层
分成不变部分与可变部分.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-17 16:55:27 | 显示全部楼层
BlueSand 发表于 2018-5-17 16:35
分成不变部分与可变部分.

这个我明白。。
但是,真不会写 年月日 加 1啊,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-17 16:56:43 | 显示全部楼层
把date转换成整形然后加个1再加在后面不就行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-17 16:57:00 | 显示全部楼层
BlueSand 发表于 2018-5-17 16:35
分成不变部分与可变部分.

可变的部分就是:
就是年份月份不变,日期 + 1.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-17 17:01:28 | 显示全部楼层
  1. def getUrl(date):
  2.     url = r'http://www.baidu.com/k_' + date+ '066_' + date+ '077_sN.html'
  3.     print(url)
  4. for date in range(20160426, 20160429):
  5.     getUrl(str(date))
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-17 17:06:58 | 显示全部楼层
alltolove 发表于 2018-5-17 16:56
把date转换成整形然后加个1再加在后面不就行了

刚才尝试了,
可以得到结果。

这个 有 BUG的。。
比如说20180228 今天的。
它相加后 是 20180229,根本就没这天啊。
所以,这个不可取。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-17 17:24:07 From FishC Mobile | 显示全部楼层
你的date函数也贴下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-17 18:03:08 | 显示全部楼层
import datetime
now=datetime.date(2018,2,28)
delta=datetime.timedelta(days=1)
now += delta
print(datetime.date.strftime(now,'%Y%m%d'))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-17 21:12:59 | 显示全部楼层
要学习 发表于 2018-5-17 17:06
刚才尝试了,
可以得到结果。

考虑加个函数对日期进行判定,是不是进一个月.也就是,你其实整个日期 部分都应该是变的部分.
如果在一年内变化.年就保持 不变,不过考虑适用性,还是把年也变成会变的部分,慢慢判定吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-17 21:54:19 | 显示全部楼层

这个 得不到 想要的结果了。

谢谢回答
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-17 21:54:54 | 显示全部楼层
chakyam 发表于 2018-5-17 18:03
import datetime
now=datetime.date(2018,2,28)
delta=datetime.timedelta(days=1)

谢谢。。

时间字符串函数 启发了我。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-18 15:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表