网页爬虫入门
爬虫解析库:XPath
dateTime = inner_html.xpath('//span[@class="laiyuan laiyuan1"]/span[@id="data"]/text()')
- 属性选择@,class、id等等。
- 子孙结点用//,子节点用/。
- /text()转换文本。//text()在上一级转换为str列表也很方便。
简书爬虫解析库:XPath
etree解析网页
转换为string,查看html。
inner_html = etree.tostring(inner_html, encoding='utf-8', pretty_print=True, method="html").decode('utf-8')
requests获取网页
def get_page(url):
try:
header = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.87 Safari/537.36'}
r = requests.get(url, headers=header)
r.encoding = 'GBK'
r.encoding = 'utf-8'
r.raise_for_status()
return (r.text)
except:
print("出现异常")
return ""
解决乱码问题:
需要针对headers具体情况编码,Python爬虫中文乱码问题