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>.*?) / .*?'
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中加入变量?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
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) # 传入参数的索引
如果有用请点击采纳谢谢!
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 5无用