如何用str.format()批量生成网址【以豆瓣读书为例】

简介: 如何用str.format()批量生成网址【以豆瓣读书为例】

1 用法说明


str.format() 方法通过字符串中的花括号 {} 来识别替换字段从而完成字符串的格式化。


1.1 写法

简单字段名有三种写法:

  • 省略不写 {}
  • 数字 {十进制非负整数}
  • 变量名 {合法的Python标识符}:在生成网址中可应用


1.2 举例

# 省略不写
print("hello!{}".format('火柴先生'))
#OUTPUT:hello!火柴先生
# 变量名
print("hello!{name}".format(name='火柴先生'))


2 应用:豆瓣读书


2.1 初步

打开网页选择一个自己感兴趣的标签,这里我选择“股票”标签进行后续操作。

ae7fc932276b43d6813f086df17a5376.png


拖动到最下方有翻页功能,点击后一页

image.png


2.2 分析URL

通过上图中url[(https://book.douban.com/tag/股票?start=20&type=T),不难发现其生成逻辑

  1. tag后为对应的细分书籍标签
  2. start值为对应书本起始数,第三页start值变为40可推测其每页显示数量为20本书


2.3 生成

  • 利用上面学习的方法先生成一条地址
# url:https://book.douban.com/tag/股票?start=20&type=T
"https://book.douban.com/tag/股票?start={num}&type=T".format(num=20)


在notebook中运行结果如下:

image.png


  • 通过简单for循环批量生成网址,构思分为如下几步:
  1. 先创建一个网址模板
  2. 生成一个空列表,用来存储批量生成的网址
  3. 执行循环,注意这里的循环次数根据具体情况来设置


template="https://book.douban.com/tag/股票?start={num}&type=T"
url_list=[]
# 下面设置40,因为股票类的书籍只有40页
for p in range(0,40):
    url=template.format(num=p*20)
    url_list.append(url)
url_list


执行效果如下:

image.png


参考链接:

Python 中 str.format() 方法详解_团子大圆帅的博客-CSDN博客_

目录
相关文章
|
前端开发 开发者 UED
html页面布局
html页面布局
347 0
|
Kubernetes 网络协议 Devops
在openfaas面板上安装onemanager
本文关键字:openfaas onemanager
583 0
在openfaas面板上安装onemanager
|
XML C# 数据格式
|
Android开发 iOS开发 开发者
《2015中国移动应用性能管理白皮书》欢迎来看
点击链接,下载报告原文:http://bbs.tingyun.com/forum.php?mod=viewthread&tid=136         2015 年,可以说是移动应用生态系统发展史上的一座里程碑。从技术上看,不断增加的屏幕分辨率,64位处理器,到支持所有平台开发的HTML5技术逐步
3270 0
|
7天前
|
人工智能 运维 安全
|
5天前
|
人工智能 异构计算
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
B站开源IndexTTS2,用极致表现力颠覆听觉体验
在语音合成技术不断演进的背景下,早期版本的IndexTTS虽然在多场景应用中展现出良好的表现,但在情感表达的细腻度与时长控制的精准性方面仍存在提升空间。为了解决这些问题,并进一步推动零样本语音合成在实际场景中的落地能力,B站语音团队对模型架构与训练策略进行了深度优化,推出了全新一代语音合成模型——IndexTTS2 。
608 21