Unjx. 2021-03-31 12:43 采纳率: 84.6%
浏览 72
已采纳

Python爬虫爬图片

import requests
import re
url='http://www.netbian.com/s/chuyinweilai/'
head={
	'user_agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'
}
page_data=requests.get(url,headers=head).text
pattern = re.compile(r'<a href="/desk.+?<img src="(.+?)"', flags=re.S)
img_list = pattern.findall(page_data)
img_list
str=r''
print(pattern.search(str))

当我用sublime text 3运行这段代码的时候,运行没有问题,也没有报错信息,但下面显示的却是“None”,也就是没有,这就很奇怪了,我手动打开那个网站的时候明明就有图片,为什么会说none呢?难道正则表达式错了吗?应该不会吧,正则错了应该会有报错的

麻烦大佬了

  • 写回答

2条回答 默认 最新

  • CSDN专家-HGJ 2021-03-31 13:57
    关注

    正则式没有问题,你没有用print(img_list)打印输出,后面的代码是对空值匹配,没有写对,1.加print,删去最后两行,2.把最后四行改成这样,两种改法都能输出正确结果:

    pattern = re.compile(r'<a href="/desk.+?<img src="(.+?)"', flags=re.S)
    img_list = re.findall(pattern,page_data)
    print(img_list)
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥30 关于#java#的问题,请各位专家解答!
  • ¥30 vue+element根据数据循环生成多个table,如何实现最后一列 平均分 合并
  • ¥20 pcf8563时钟芯片不启振
  • ¥20 pip2.40更新pip2.43时报错
  • ¥15 换yum源但仍然用不了httpd
  • ¥50 C# 使用DEVMOD设置打印机首选项
  • ¥15 麒麟V10 arm安装gdal
  • ¥20 OPENVPN连接问题
  • ¥15 flask实现搜索框访问数据库
  • ¥15 mrk3399刷完安卓11后投屏调试只能显示一个设备