当前位置: 首页 > 工具软件 > WebCrawler > 使用案例 >

Web Crawler

西门鹏程
2023-12-01

爬虫相关概念

域名

域名只是一个网站的标识,不可以直接访问网站,只有当域名经过解析之后,这个域名才能成为一个URL(网址)。URL(网址)包含域名,是Internet上的地址簿,通过URL可以到达任何一个网站页面。

通用爬虫

(通用性搜索引擎)--百度等:大多爬取得是无用信息

聚焦爬虫:

根据需求来爬取

聚焦爬虫设计思路:

        1、给一个URL(URL如何获取?)

        2、模拟游览器通过http协议访问url(如何访问),获取服务器返回的html代码

        3、按照规则解析html字符串(如何解析)

反爬手段

        1、user-agent(用户代理),简称ua,使得服务器能够识别何种,操作系统、游览器

        2、代理IP:透明代理、匿名代理、高匿名代理

        3、验证码校验

        4、多态加载网页:给你一些假数据

        5、数据加密

urllib库

urllib库pycharm自带,不用下载

ctrl+f输出端搜索

1、需求:使用urllib获取百度首页源码

# 需求:使用urllib获取百度首页源码

import urllib.request
# 1、定义一个url
url = 'http://www.baidu.com'
# 2、模拟游览器向服务器发送请求
response = urllib.request.urlopen(url)
# 3、获取响应中的页面源码
# read默认返回的是字节形式的二进制数据,所以要转化一下(decoe解码:二进制--字符串)
content = response.read().decode('utf-8')

# 4、打印数据
print(content)


2、一个类型和六个方法

import urllib.request

url = 'http://www.baidu.com'

response = urllib.request.urlopen(url)
print(type(response))  # 一个类型:<class 'http.client.HTTPResponse'>

# 六个方法
content = response.read(5)  # 读5个字节
content = response.readline()
content = response.readlines()
content = response.getcode()  # 返回状态码,如果返回200则是对的
content = response.geturl()  # 返回url地址
content = response.getheaders()  # 返回状态信息
print(content)

3、下载网页、图片、视频

import urllib.request
# 下载网页
url_page = 'https://www.csdn.net/'
urllib.request.urlretrieve(url_page,'csdn.html')  # 取回
print('successful')
# 下载图片
url_image = 'https://img2.baidu.com/it/u=1742064249,2154824212&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500'
urllib.request.urlretrieve(url=url_image,filename='girl.jpg')

# 下载视频
url_video = 'https://vd2.bdstatic.com/mda-kknnhxizkvhw1358/sc/mda-kknnhxizkvhw1358.mp4?v_from_s=hkapp-haokan-nanjing&auth_key=1651033121-0-0-c1c56be3425d4d317cbdf70d329098bb&bcevod_channel=searchbox_feed&pd=1&cd=0&pt=3&logid=2920995839&vid=18373311689486988030&abtest=100815_1-101454_5-101830_2-17451_2&klogid=2920995839'
urllib.request.urlretrieve(url=url_video,filename='girl_avatar.mp4')

4、请求对象的定制

5、get请求

6、post请求

7、代理、代理池

 类似资料:

相关阅读

相关文章

相关问答