爬虫进阶知识学习

#爬虫进阶知识点(方便温习做点笔记)


  • ua添加
  • cookie获取
  • lxml之etree利用
  • URL自动获取
  • 一种图片保存方式

ua上什么?
ua即是User-agent的缩写,个人理解为使得服务器通过ua把你识别为一个浏览器而不是爬虫;
ua获取

  • 打开chrome浏览器,右键检查,点击network,在下方寻找到一个url点击一下,即可出现一些信息,其中一条为User-agent
  • 也可以在网上搜索ua大全,随便抄一条

本人上网上随便抄的:
‘User-Agent’ : ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3100.0 Safari/537.36’,

cookie是什么?

cookie可以从网上随便一搜,大概意思就是给予一个短时间的证书,在此期间只要这个证书便可以访问。

cookie获取同上ua获取方式一,打开浏览器找;

但是这样手动寻找显得很。。。
于是需要利用一些手段去自动获取:

def getcookie(url):

response = requests.get(url)
cookie = response.cookies
print(cookie)
print('——————————————')
mycookie = ''
for key, value in cookie.items():
    mycookie = mycookie + str(key) + '=' + str(value) + ';'        
print(mycookie)
return mycookie

requests.get()的回应中含有cookies,但它是键值对应的,只需进行简单的字典遍历,并按照浏览器现实格式进行重组便可以获得完整cookie,用来传给完整请求使用。

lxml之etree使用
lxml是一个非常好用的库,本人只接触了一小部分——etree,
‘’‘
html = etree.HTML(text)
’‘’
通过使用etree可以形成很方便的html格式数据,通过xpath去很简单的解析。

url自动获取
这点比较简单,只要通过观察网页源码,找到可能含有url的标签进行读取,在读取时加入异常捕获:
try:
#正常的代码
except Exception as e:
print(‘it is a false url.\n’)
pass
一种图片下载方式
可以把图片对应的url直接获取到,print一下,查看内容,显然是乱码。但是通过写文件方式,直接写爬取到文件的content,你就会发现一张图片已经被下载再来了。
image = requests.get(url, headers=headers)
imgname = str(random.randint(1,100)) + ‘.jpg’
print(imgname)
print(image)
with open(imgname, ‘wb’) as f:
f.write(image.content)
就这么多,也是一点点小知识,很快就能掌握,喜欢的话点个赞。(因为最近手上没电脑,都是拿ipad做的,这个代码格式啥的编辑不对,丑点别介意)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值