【python爬虫】python+request写的第一个爬虫,已应用

#coding=utf-8
import re
import urllib.request
import xlrd
import xlwt

def gethtml(url): #获取网页html
jiuaoopage=urllib.request.urlopen(url,timeout=10) #设置网页超时时间
html=jiuaoopage.read()
return html

def gettel(html): #利用正则表达式抓取电话号码
r=r’0\d{2,3}-\d{7,8}’ #抓取固定号码
fo=re.compile®
tel=fo.findall(html.decode(‘utf-8’,‘ignore’)) #ignaore不完全匹配
tel = list(set(tel)) #号码去重
return tel

readbook = xlrd.open_workbook(‘srcurl.xlsx’) #读取域名列表
sheet = readbook.sheet_by_index(0)
nrows = sheet.nrows
workbook = xlwt.Workbook(encoding=‘ascii’) #创建一个sheet,以便写入电话号码
worksheet = workbook.add_sheet(‘My Worksheet’)
for rowtag in range(0,nrows):
domainname = sheet.cell(rowtag, 0).value
try:
html=gethtml(domainname)
tel=gettel(html)
tel = " ".join(tel)
worksheet.write(rowtag,0,domainname) #写入域名
worksheet.write(rowtag,1,tel) #写入号码
workbook.save(‘selecttel.xls’)
print(domainname)
print(tel)
except urllib.error.HTTPError:
print(“页面无法访问”)
except urllib.error.URLError:
print(“页面无法访问”)
except Exception as e:
print(“出现异常:” + str(e))
else:workbook.save(‘selecttel.xls’)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值