python批量爬虫word_python爬取各类文档方法归类汇总

HTML文档是互联网上的主要文档类型,但还存在如TXT、WORD、Excel、PDF、csv等多种类型的文档。网络爬虫不仅需要能够抓取HTML中的敏感信息,也需要有抓取其他类型文档的能力。下面简要记录一些个人已知的基于python3的抓取方法,以备查阅。

1.抓取TXT文档

在python3下,常用方法是使用urllib.request.urlopen方法直接获取。之后利用正则表达式等方式进行敏感词检索。

### Reading TXT doc ###

from urllib.request import urlopen

from urllib.error import URLError,HTTPError

import re

try:

textPage = urlopen("http://www.pythonscraping.com/pages/warandpeace/chapter1.txt")

except (URLError,HTTPError) as e:

print("Errors:\n")

print(e)

#print(textPage.read())

text = str(textPage.read())

#下面方法用正则匹配含1805的句子

pattern = re.compile("\..*1805(\w|,|\s|-)*(\.)")#不完美,简单示例

match = pattern.search(text)

if match is not None:

print(match.group())

#下面方法不用正则。先用.将句集分片,之后就可遍历了。

ss = text.split('.')

key_words = "1805"

words_list = [x.lower() for x in key_words.split()]

for item in ss:

if all([word in item.lower() and True or False for word in words_list]):

print(item)

上面的方法是已知目标网页为txt文本时的抓取。事实上,在自动抓取网页时,必须考虑目标网页是否为纯文本,用何种编码等问题。

如果只是编码问题,可以简单使用print(textPage.read(),'utf-8')等python字符处理方法来解决,如果抓取的是某个HTML,最好先分析,例如:

from urllib.request

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值