python爬虫详解

我们一般的python爬虫过程如下:

1、使用requests模块取get打开url,获取页面源码

2、使用xpath或者正则取匹配我们想要的数据

仔细看来,爬虫并不难,只是我们被他的使用给吓到了,下面我们直接上代码,在代码注释中去理解:

import requests
import re
import pymysql
from lxml import etree
from pymongo import MongoClient
#获取用来打开url的session
sessions = requests.session()
'''
给sssion设置代理,
因为一般的网站没有这个的话,
会拒绝我们的爬虫访问,
因此我们在这模拟谷歌浏览器访问
'''
sessions.headers['User-Agent'] = 'Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.94 Safari/537.36'

#进行访问获取源码
r = sessions.get(
    'https://baike.baidu.com/item/%E4%B8%AD%E5%9B%BD%E5%9C%B0%E9%9C%87%E5%B1%80%E9%83%91%E5%B7%9E%E5%9F%BA%E7%A1%80%E5%B7%A5%E7%A8%8B%E5%8B%98%E5%AF%9F%E7%A0%94%E7%A9%B6%E9%99%A2%E6%A1%A9%E5%9F%BA%E6%A3%80%E6%B5%8B%E4%B8%AD%E5%BF%83')
#给怕取下来的数据指定解码格式
r.encoding = 'utf-8'
text = r.text
#将网页源代码进行树结构化,以便于使用xpath
content = etree.HTML(text)
#使用xpath提取标签h1中的内容
h = content.xpath('//h1')
h1 = h[0].xpath('string(.)').strip()
d = content.xpath("//div[@label-module='lemmaSummary']")
d1 = d[0].xpath('string(.)').strip()
print(h1)
print(d1)

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值