###### 问题遇到的现象和发生背景
###### 问题相关代码,请勿粘贴截图
###### 运行结果及报错内容
###### 我的解答思路和尝试过的方法
###### 我想要达到的结果
import requests
import csv
url1 = 'http://category.dangdang.com/'
url2 = 'cp01.58.03.00.00.00.html'
url3 = url1 + url2
f = open('book.csv', mode='w',encoding='utf-8')
csvwriter = csv.writer(f)
resp = requests.get(url3)
obj = re.compile(r'</div>.*?单品标题" target="_blank" > (?P<name>.*?)</a>.*?target="_blank" title="(?P<chinapublisher>.*?)">.*?p">(?P<commentnum>.*?)</a></p>.*?单品出版社(?P<foreignpublisher>.*?)>', re.S)
result = obj.finditer(resp.text)
for it in result:
print(it.group("name"))
print(it.group("chinapublisher"))
print(it.group("commentnum"))
print(it.group("foreignpublisher"))
dic = it.groupdict()
csvwriter.writerow(dic.values())
print('over!')
爬虫代码print可以都输出,但是写到CSV文件里就只写最后一条
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
抄代码抄错的小牛马 2022-02-22 08:55关注还有就是,在你代码的28行哪里,tab一下缩进,让他在for循环里
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报