如何用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博客_

目录
相关文章
|
6月前
|
数据采集 Python
爬虫实战-Python爬取百度当天热搜内容
爬虫实战-Python爬取百度当天热搜内容
205 0
|
5月前
|
Web App开发 Python Windows
经验大分享:PYTHON爬取66影视的电影下载链接,有搜索功能
经验大分享:PYTHON爬取66影视的电影下载链接,有搜索功能
139 2
|
6月前
|
JSON 自然语言处理 网络协议
【字节跳动青训营】后端笔记整理-2 | Go实践记录:猜谜游戏,在线词典,Socks5代理服务器
猜数字游戏也算是入门一门编程语言必写的程序了。通过这个程序,我们可以熟悉Go语言中的输入输出、流程控制与随机函数的调用。
94 2
|
程序员 Python
免费制作国旗头像,1行Python代码搞定,小白可用
免费制作国旗头像,1行Python代码搞定,小白可用
126 0
免费制作国旗头像,1行Python代码搞定,小白可用
|
程序员 开发者 Python
小白学Python:提取Word中的所有图片,只需要1行代码
小白学Python:提取Word中的所有图片,只需要1行代码
|
搜索推荐 Python
【小白必看】利用Python生成个性化名单Word文档
【小白必看】利用Python生成个性化名单Word文档
102 0
|
数据采集
【详细步骤解析】爬虫小练习——爬取豆瓣Top250电影,最后以csv文件保存,附源码
【详细步骤解析】爬虫小练习——爬取豆瓣Top250电影,最后以csv文件保存,附源码
313 0
|
数据采集 存储 关系型数据库
基于Python的爬虫演示示例-以电影网站为例
爬取的数据最终会存到MYSQL服务器的表中,可以写程序将数据展示出来。注意的时会对IP进行限制封号,200条为限,超过IP会被限制,可以换一个IP进行抓去。主要研究爬虫的基本使用规范和语法,相对较为简单,供大家学习参考
244 0
基于Python的爬虫演示示例-以电影网站为例
|
数据采集 Web App开发 JavaScript
10分钟教你用Python爬取Baidu文库全格式内容
10分钟教你用Python爬取Baidu文库全格式内容
1381 0
10分钟教你用Python爬取Baidu文库全格式内容
|
XML JSON 移动开发
小伙伴解析Json解的66的,但是老板甩给他了一个txt,那么就看如何用Unity解析txt文档
小伙伴跟我说,自从看了我这篇【Unity3D日常】Unity写Json数据,以及在Unity读取、解析Json数据,潜心学习,解析Json那解析的66的,没啥压力,但是领导给了他一个txt不知道怎么解析。 我说,那你把文档发给我,我整理一篇文章,让小伙们下次遇到这个问题知道总体流程了。
小伙伴解析Json解的66的,但是老板甩给他了一个txt,那么就看如何用Unity解析txt文档
下一篇
无影云桌面