页面采集

简介: 爬虫系列文章

爬虫

requests模块

  • urllib模块:基于模拟浏览器上网的模块。网络请求模块。
  • requests:基于网络请求的模块

    • 作用:模拟浏览器上网。
  • requests模块的编码流程:

    • 指定url
  • 发起请求

    • 获取响应数据(爬取到的数据)
  • 持久化存储

页面采集

import requests

#1.爬取搜狗首页的页面源码数据
url = 'https://www.sogou.com/'
response = requests.get(url=url)
page_text = response.text #text返回的是字符串形式的响应数据
with open('./sogou.html','w',encoding='utf-8') as fp:
    fp.write(page_text)
import requests

#2.简易的网页采集器
#涉及到的知识点:参数动态化,UA伪装,乱码的处理
word = input('enter a key word:')
url = 'https://www.sogou.com/web'
#参数动态化:将请求参数封装成字典作用到get方法的params参数中
params = {
    'query':word
}
response = requests.get(url=url,params=params)
page_text = response.text
fileName = word+'.html'
with open(fileName,'w',encoding='utf-8') as fp:
    fp.write(page_text)
print(word,'下载成功!!!')

上述代码出现的问题:

  • 乱码问题
  • 爬取数据丢失
import requests

#乱码处理
word = input('enter a key word:')
url = 'https://www.sogou.com/web'
#参数动态化:将请求参数封装成字典作用到get方法的params参数中
params = {
    'query':word
}
response = requests.get(url=url,params=params)
#可以修改响应数据的编码
response.encoding = 'utf-8'#手动修改了响应对象的编码格式
page_text = response.text
fileName = word+'.html'
with open(fileName,'w',encoding='utf-8') as fp:
    fp.write(page_text)
print(word,'下载成功!!!')
相关文章
|
7月前
|
Prometheus 监控 关系型数据库
监控数据的几种采集方式
【1月更文挑战第14天】
|
数据采集 安全 JavaScript
使用GoQuery实现头条新闻采集
在本文中,我们将介绍如何使用Go语言和GoQuery库实现一个简单的爬虫程序,用于抓取头条新闻的网页内容。我们还将使用爬虫代理服务,提高爬虫程序的性能和安全性。我们将使用多线程技术,提高采集效率。最后,我们将展示爬虫程序的运行结果和代码。
使用GoQuery实现头条新闻采集
|
前端开发 C# 容器
自定义面板优化统计标题卡
自定义面板优化统计标题卡
46 0
|
数据采集 缓存 JavaScript
网站流量日志埋点收集- - 方案二--点击事件数据采集实现|学习笔记
快速学习网站流量日志埋点收集- -方案二--点击事件数据采集实现
392 0
网站流量日志埋点收集- - 方案二--点击事件数据采集实现|学习笔记
|
数据采集 搜索推荐 SEO
全网URL采集工具(msray),支持关键词采集,域名采集,联系人采集
全网URL采集工具,支持baidu,sogou,bing,Google,Yandex,Want,神马,DuckDuckGo,等搜索引擎,支持关键词采集,域名采集,URL采集,联系方式采集,手机号采集,qq采集,邮箱采集
全网URL采集工具(msray),支持关键词采集,域名采集,联系人采集
|
JSON Prometheus 监控
Granafa监控仪表盘:自定义简约型-只显示资源总览,各个主机详情
Granafa监控仪表盘:自定义简约型-只显示资源总览,各个主机详情
729 0
Granafa监控仪表盘:自定义简约型-只显示资源总览,各个主机详情
|
SQL 弹性计算 监控
日志服务(SLS)初体验:采集、加工、查询分析及可视化
日志服务(SLS)是阿里集团自研的一站式日志平台,它包含数据实时采集、数据加工、智能查询分析以及数据分发四大基础功能,用户无需开发就能能够开箱即用地使用它来提升运维、运营效率,建立 DT 时代海量日志处理能力。 为了让大家对日志服务有更直观的感受,本文将带着大家体验一下这些基础功能,以最常见的 Linux Syslog 作为对象,看看如何简单快速地实现对它的采集、加工、查询分析以及可视化。
1461 0
|
监控 前端开发 JavaScript
如何优雅地上报前端监控日志
> - 页面在用户那里运行,如果10%的用户页面出现问题而自己本地没有办法重现? > - 如何先一步了解到前端出现的问题,而不是等用户反馈? > - 能不能像查看服务端日志一样来定位前端页面运行的问题? 前端在业务复杂度越来越高的情况下,本地即使做了充分的测试,依照[caniuse](https://caniuse.com)做了很多兼容,依然无法让人放心页面能否正常运行或者运行得怎么样。
7316 0
|
监控 JavaScript 前端开发