您的位置:首页 > 编程语言 > Python开发

简单的python爬虫,爬取网页内容并保存到指定文件(实例源码加注释)

2020-02-29 19:15 906 查看

python爬虫,爬取网页内容并保存到指定文件(实例)
python爬虫,爬出豆瓣书摊的书籍列表以及图片,还有连接。当然还可以将相关代码封装成函数,使用递归调用就可以无限爬下去。

#导包,requets可以福爬取网页,BeautifulSoup4可以解析requests爬下来的网页,解析为html文档
import requests
from bs4 import BeautifulSoup

#打开对应地址的文件,将爬取下来的结果保存进去,注意下面的语句全部都要缩进一个
with open('C:/Users/A/Desktop/hehe.txt', 'r+', encoding='utf-8') as f:
#创建要访问的网页链接
url = "https://movie.douban.com/"

#设置请求头的UA用于身份伪装
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36"
}

#使用requests.get的方法去爬取页面
res = requests.get(url, headers=headers)

#设置已经爬下来的页面的编码格式
res.encoding = "utf-8"

#使用BeautifulSoup4解析html文档
soup = BeautifulSoup(res.text, 'xml')

#使用find方法找到里面标签为a标签,文本内容为读书的标签(注意这里是完全匹配)
tags = soup.find(name='a', text='读书')

#使用get方法获取里面的href链接
url = tags.get('href')

rep = requests.get(url, headers=headers)

soup2 = BeautifulSoup(rep.text, 'lxml')

#使用select CSS 选择器选择carousel 这个class内容,并且是里面a标签的内容,注意是一个列表内容
for i in soup2.select(".carousel a"):
#print(i)
#使用select选择img标签
if i.select("img"):

#使用get获取里面的title,href内容,以及img里面的第一个元素的src内容
print(i.get('title'), "-------", i.get('href'), "-------", i.select("img")[0].get('src'))

#使用write将这些爬取下来的内容一行一行的写入文件中
f.write("{} {} {} {} {}\n".format(i.get('title'), "-------", i.get('href'), "-------", i.select("img")[0].get('src')))
  • 点赞 1
  • 收藏
  • 分享
  • 文章举报
hua_hs 发布了9 篇原创文章 · 获赞 83 · 访问量 431 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: