您当前的位置: 首页 >  Python

嗨学编程

暂无认证

  • 1浏览

    0关注

    1405博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

python爬取静态数据详解

嗨学编程 发布时间:2019-06-11 15:17:25 ,浏览量:1

目的

爬取http://seputu.com/数据并存储csv文件

导入库

lxml用于解析解析网页HTML等源码,提取数据。一些参考:https://www.cnblogs.com/zhangxinqi/p/9210211.html

requests请求网页

chardet用于判断网页中的字符编码格式

csv用于存储文本使用。

re用于正则表达式

from lxml import etree

import requests

import chardet

import csv

import re

获取网页

生成网页头带入到request.get中,可以模拟浏览器。其中的网页头,可以在浏览器控制台,network下查找到。

判断并转换编码

r.encoding=chardet.detect(r.content)['encoding']

解析网页

html=etree.HTML(r.text)

提取网页信息

浏览器打开对应网站,找到要提取的标签,通过元素审查,完成html文本内容的抽取。

这里抽取的内容为h2_title,href,title内容。title通过正则表达式完成分组,并进行数据提取。

注意的是:python正则表达式部分,不支持部分的零宽断言语法,采用分组方案,避开了可能出现的错误!

如以下代码会出错:

rows存储了二维数据,用于写入csv文件。

存储数据

建立header一维数据,配合之前rows二维数据,通过w权限,配合writer方法,完成一维、二维的数据写入

通过最后的输出,标记正常完成。

关注
打赏
1663681728
查看更多评论
立即登录/注册

微信扫码登录

0.4676s