最近看了些关于爬虫的视频,根据视频的代码来找其他的一些网站试试水,代码写好后运行发现没报错但是也没有抓到图片,代码如下:
import requests
import re
import time
import os
"""Web Requests"""
def getOnePage(n):
html = f'http://www.win4000.com/wallpaper_detail_167506_{n}.html'
response = requests.get(html)
return response.text
"""Content Traverse"""
def parse(html):
url = re.findall('<img class=".*?" src="(.*?)" alt=".*?" title=".*?"/>',html)
print(url)
return url
"""Save Pictures"""
def save2pic(url):
pic_name = url.split('/')[-1]
with open(pic_name, 'wb') as f:
f.write(url.content)
def run():
for n in range(1,10):
html = getOnePage(n)
items = parse(html)
for item in items:
save2pic(item)
if "__name__" == "__main__":
run()
自我感觉问题是在保存数据目录这里,还有 parse 函数可能也有问题,因为没有显示 print 的数据。
希望各位前辈指导下,感激不尽!
还有一个小问题,是关于使用 xpath 抓取 url 如何写呢,视频中的写法是:
html = etree.HTML(text)
names = html.xpath('')
其中的 HTML 是一个固定用法吗?这样做变成了一个列表,会影响后续 url 提取到图片吗?
问题可能很小白,但是还是希望各位大大能给些意见,再次感谢!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.