Wistain 2021-08-14 09:34 采纳率: 78%
浏览 484
已结题

爬虫如何在url中加入变量?


import requests
import re
import csv

a = input()

url = "f'https://movie.douban.com/top250?start={a}&filter="
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67"
}
resp = requests.get(url, headers=headers)
page_content = resp.text

obj = re.compile(r'<li>.*?<span class="title">(?P<name>.*?)</span>.*?<br>(?P<year>.*?)&nbsp;/&nbsp;.*?'
                 r'<span class="rating_num" property="v:average">(?P<score>.*?)</span>.*?<span>(?P<number>.*?)</span>', re.S)
result = obj.finditer(page_content)
f = open("data.csv",mode="w",encoding="utf-8",newline="")
csvwriter = csv.writer(f)
for it in result:
    #print(it.group('name'))
    #print(it.group('year').strip()) #删除开头或是结尾的字符(默认为空格或换行符)
    #print(it.group('score'))
    #print(it.group('number'))
    dic = it.groupdict()
    dic['year'] = dic['year'].strip()
    csvwriter.writerow(dic.values())
f.close()
print("Over!")

其中url部分url = "f' 豆瓣电影 Top 250 https://movie.douban.com/top250?start=%7Ba%7D&filter=%22%E4%B8%BA%E4%BB%80%E4%B9%88%E7%BC%96%E8%AF%91%E9%94%99%E8%AF%AF%EF%BC%8C%E4%B8%8D%E8%83%BD%E6%9B%B4%E6%94%B9a%E7%9A%84%E5%80%BC%EF%BC%9F

  • 写回答

4条回答 默认 最新

  • 张大帅哥_ 2021-08-14 09:49
    关注

    f 在字符串外面

    a = input() 
    url = f'https://movie.douban.com/top250?start={a}&filter='
    

    或者

    a = 'abc'
    b = 'efg'
    c = 'jkl'
    url = '{f}d{s}hi{t}'.format(f=a, s=b, t=c)  # 带关键字
    url = '{}d{}hi{}'.format(a, b, c)     # 按顺序格式化
    url = '{0}d{2}hi{1}'.format(a, c, b)    # 传入参数的索引
    

    如果有用请点击采纳谢谢!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 8月22日
  • 已采纳回答 8月14日
  • 创建了问题 8月14日

悬赏问题

  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题
  • ¥15 github训练的模型参数无法下载
  • ¥15 51单片机显示器问题
  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案
  • ¥50 winform中使用edge的Kiosk模式
  • ¥15 关于#python#的问题:功能监听网页
  • ¥15 怎么让wx群机器人发送音乐
  • ¥15 fesafe材料库问题