初学者学习python爬虫的总结(一)

总结:
1.爬虫最主要的功能是抓取网页.我们希望可以等到html,然后去解析得到其中自己想要的信息.
2.反爬虫 的主要措施:

  • ip地址的审核
  • user_agent的验证
  • 访问的频率
  • refence的验证
  • 强制登录
  • 动态加载
    3.因此,为了我们可以不被这些措施所阻隔,需要一些技术,来进行处理来得到我们需要的信息.
    因此,我们需要请求网页,ua模拟,ip代理,模拟登录等步骤来进行学习和应用,来得到我们需要的信息.

一.请求网页数据

1. 发起请求
import requsets

#请求的网址
url='http://www.douban.com'
#请求
data=requests.get(url)
#响应的主体内容
print(data.text)
2. 响应内容
#响应的状态信息
print(data.status_code)
#响应的头部信心
print(data.headers)

二、设置UA进行伪装

1.自己编写
2.使用fake_useragent
from fake_useragent import UserAgent
ua = UserAgent()
#ie浏览器
user agent
print(ua.ie)
#opera浏览器
print(ua.opera)
#chrome浏览器
print(ua.chrome)
#firefox浏览器
print(ua.firefox)
#safri浏览器
print(ua.safari)
#最常用的方式
#写爬虫最实用的是可以随意变换headers,一定要有随机性。支持随机生成请求头
print(ua.random)
print(ua.random)
print(ua.random)

三、网页解析

1.BeautifulSoup解析
2.find检查

四、数据的储存

import pandas as pd

五、使用代理

使用sock进行代理,在进行爬虫ip代理时,我只需要设置把端口号设置为你本机代理的端口地址。我是使用本机的127.0.0.1:1080进行代理。
因此

import requsets
pro={'https':'https://127.0.0.1:1080',
     ...: 'http':'http://127.0.0.1:1080'}
url='www.google.com'
re=requests.get(url,proxies=pro)

六、模拟登陆

1.在浏览器登陆之后,打开>>>开发者工具,>>>network,复制

a=''  #复制的cookies
headers={'User-Agent':ua.chrome,'Cookie':a}
url='' #登陆之后的网址
data=requests.get(url,headers=headers)

七、动态内容的加载

下载一个ChromeDriver或GeckoDriver。根据自己浏览器的版本选择合适的驱动器

1.安装python的库selenium
url='http://www.baidu.com'       #网址必须是要全否则会报错误
from selenium import webdriver
driver=webdriver.chrome(“chromedriver的位置”) 
drvier.get(url)
html=driver.page_source
2.当自己的网址没加htttp时,会报错误
WebDriverException: Message: 
unknown error: 
unhandled inspector error: 
{"code":-32000,"message":"Cannot navigate to invalid URL"}
  (Session info: chrome=71.0.3578.98)
  (Driver info: chromedriver=2.45.615291 (ec3682e3c9061c10f26ea9e5cdcf3c53f3f74387),
  platform=Windows NT 10.0.17134 x86_64)

总结:
1.爬虫最主要的功能是抓取网页.我们希望可以等到html,然后去解析得到其中自己想要的信息.
2.反爬虫 的主要措施:

  • ip地址的审核
  • user_agent的验证
  • 访问的频率
  • refence的验证
  • 强制登录
    3.因此,为了我们可以不被这些措施所阻隔,需要一些技术,来进行处理来得到我们需要的信息.

学习连接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值