一文带你了解Python 四种常见基础爬虫方法介绍

时间:2021-05-22

一、Urllib方法

Urllib是python内置的HTTP请求库

import urllib.request#1.定位抓取的urlurl='http:///'headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'}html=requests.get(url,headers=headers)data=html.content.decode('gbk')soup=BeautifulSoup(data,'html.parser')#获取span标签,class_="at"属性span=soup.find_all('span',class_="at")# for i in span:# print(i.get_text())#select方法(CSS选择器)span1=soup.select('span[class="at"]')for m in span1: print(m.get_text())

四、XPath语法

XPath 是一门在 XML 文档中查找信息的语言。
XPath 可用来在 XML 文档中对元素和属性进行遍历

from lxml import etreetext=''' <html> <head> <title>春晚</title> </head> <body> <h1 name="title">个人简介</h1> <div name="desc"> <p name="name">姓名:<span>岳云鹏</span></p> <p name="addr">住址:中国 河南</p> <p name="info">代表作:五环之歌</p> </div>'''#初始化html=etree.HTML(text)# result=etree.tostring(html) #字节流# print(result.decode('utf-8'))#查询所有的p标签p_x=html.xpath('//p')print(p_x)#查询所有p标签的文本,用text只能拿到该标签下的文本,不包括子标签for i in p_x: print(i.text) #发现<span>没有拿到#优化,用string()拿标签内部的所有文本for i in p_x: print(i.xpath('string(.)'))# 查询所有name属性的值attr_name=html.xpath('//@name')print(attr_name)#查询出所有包含name属性的标签attr_name1=html.xpath('//*[@name]')print(attr_name1)

到此这篇关于一文带你了解Python 四种常见基础爬虫方法介绍的文章就介绍到这了,更多相关Python 基础爬虫内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章