网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
①确定爬取内容
数据所在地址 kanxiaojiejie 大家自己完善一下地址,包括后面代码里的。
②通过查看网页源代码分析数据内容
2、爬虫流程
发送请求 - 获取数据 - 解析数据 - 保存数据
-
向目标网站发送网络请求 kanxiaojiejie
-
获取数据 (网页源代码)
-
解析数据 (提取数据) 相册详情页地址 标题
-
向详情页发送网络请求
-
获取数据 (网页源代码)
-
解析数据 (提取数据图片链接)
-
向图片链接发送请求
-
保存数据
======================================================================
模块导入
import requests
import parsel
发送请求
def get_response(html_url):
headers = {
‘User-Agent’: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36’
}
为什么这里要 requests.get() post() 请求会更安全…
response = requests.get(url=html_url, headers=headers)
return response
保存数据
def save(img_url):
img_data = requests.get(img_url).content
img_name = img_url.split(‘/’)[-1]
print("正在下载: " + img_name)
with open(“img\” + img_name, mode=‘wb’) as f:
f.write(img_data)
解析数据
获取图片url地址以及标题 提取数据
def parse_1(html_data):
selector = parsel.Selector(html_data)
link_list = selector.css(‘.entry-title a::attr(href)’).getall()
return link_list
获取图片url地址以及标题
ef parse_2(html_data):
selector_1 = parsel.Selector(html_data)
img_list = selector_1.css(‘.entry.themeform p img::attr(src)’).getall()
return img_list
主函数
def run(url):
data_html = get_response(url).text
link_list = parse_1(data_html)
for link in link_list:
data_html_1 = get_response(link).text
感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!