【Python爬虫】基本原理和框架

在这里插入图片描述

开发者工具介绍

参考:https://blog.csdn.net/m0_37724356/article/details/79884006
右击网页-检查,或者F12,打开网页开发者工具
在这里插入图片描述
get方式将请求的参数包含在url里面,post方式则在url中隐藏信息,而在"Form data"中
在这里插入图片描述
在这里插入图片描述
相当于请求的配置信息,User_agent用于判断是否合法
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
响应体就是我们想获取的内容

获取响应内容:

1、抓取网页文本

#抓取网页文本
import requests
headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}#请求头
url='http://www.zhihu.com'#请求url
response=requests.get(url,headers=headers)#获得响应
print(response.status_code)#获取响应状态
print(response.headers)#获取响应头
print(response.text)#获取响应体

2、抓取二进制文件

#抓取图片、视频的二进制文件
import requests
headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}#请求头
url='https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/newmusic/img/default_8a5b42b2.png'#请求url
response=requests.get(url,headers=headers)#获得响应
#将响应体保存
with open('extract_test.gif','wb') as f:#wb模式:二进制模式的写入,直接存入到指定格式即可
    f.write(response.content)
用selenium的webdriver解决javascript渲染问题:
from selenium import webdriver
driver=webdriver.Chrome()#控制浏览器
driver.get('http://www.zhihu.com')#加载网页
print(driver.page_source)#打印网页已经渲染好的信息
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python爬虫是一种自动化获取互联网上数据的技术。它通过模拟浏览器行为,发送HTTP请求并解析响应内容,从而实现对网页数据的提取和处理。下面是Python爬虫的工作原理和常用框架的介绍: 1. 工作原理: - 发送请求:爬虫通过发送HTTP请求获取目标网页的内容,可以使用Python中的requests库或者urllib库来发送GET或POST请求。 - 解析内容:获取到网页的响应后,爬虫需要解析HTML或者其他格式的内容,提取出需要的数据。常用的解析库有BeautifulSoup、lxml等。 - 数据处理:爬虫可以对提取到的数据进行清洗、筛选、存储等操作,可以使用Python中的正则表达式、pandas等库进行数据处理。 - 遍历链接:爬虫可以通过解析网页中的链接,实现对其他页面的访问和数据提取,从而实现深度爬取。 2. 常用框架: - Scrapy:Scrapy是一个强大的Python爬虫框架,它提供了高度可定制化和可扩展性的结构,支持异步处理和分布式爬取。 - BeautifulSoup:BeautifulSoup是一个用于解析HTML和XML文档的Python库,它提供了简单灵活的API,方便提取网页中的数据。 - Selenium:Selenium是一个自动化测试工具,也可以用于爬虫。它可以模拟浏览器行为,支持JavaScript渲染的页面爬取。 - PyQuery:PyQuery是一个类似于jQuery的Python库,它可以方便地解析HTML文档,并使用类似于CSS选择器的语法来提取数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值