当前位置: 首页 > news >正文

自己做网站要买域名吗开发软件属于什么行业

自己做网站要买域名吗,开发软件属于什么行业,搭建平台的同义词,wordpress建哪些网站HTML文档是互联网上的主要文档类型#xff0c;但还存在如TXT、WORD、excel、PDF、csv等多种类型的文档。网络爬虫不仅需要能够抓取HTML中的敏感信息#xff0c;也需要有抓取其他类型文档的能力。下面简要记录一些个人已知的基于python3的抓取方法#xff0c;以备查阅。1.抓取…HTML文档是互联网上的主要文档类型但还存在如TXT、WORD、excel、PDF、csv等多种类型的文档。网络爬虫不仅需要能够抓取HTML中的敏感信息也需要有抓取其他类型文档的能力。下面简要记录一些个人已知的基于python3的抓取方法以备查阅。1.抓取TXT文档在python3下常用方法是使用urllib.request.urlopen方法直接获取。之后利用正则表达式等方式进行敏感词检索。 ### Reading TXT doc ###from urllib.request import urlopenfrom urllib.error import URLError,HTTPErrorimport retry: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 1805words_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 import urlopenfrom urllib.error import URLError,HTTPErrorfrom bs4 import BeautifulSouptry:html urlopen(https://en.wikipedia.org/wiki/Python_(programming_language))except (URLError,HTTPError) as e:print(e)try:bsObj BeautifulSoup(html,html.parser)content bsObj.find(div,{id:mw-content-text}).get_text()except AttributeError as e:print(e)meta bsObj.find(meta)#print(bsObj)if meta.attrs[charset] UTF-8:content bytes(content,UTF-8)print(-----------------UTF-8--------------)print(content.decode(UTF-8))if meta.attrs[charset] iso-8859-1:content bytes(content,iso-8859-1)print(--------------iso-8859-1------------)print(content.decode(iso-8859-1))2.抓取CSV文档CSV文件是一种常见的数据存档文件与TXT文档基本类似但在内容组织上有一定格式文件的首行为标题列之后的文件中的每一行表示一个数据记录。这就像一个二维数据表或EXCEL表格一样。 python3中包含一个csv解析库可用于读写csv文件但其读取目标一般要求是在本地要读取远程网络上的csv文件需要用urllib.request.urlopen先获取。例如 #csv远程获取内存加载读取from urllib.request import urlopenimport csvfrom io import StringIO#在内存中读写str如果要操作二进制数据就需要使用BytesIOtry:data urlopen(http://pythonscraping.com/files/MontyPythonAlbums.csv).read().decode(ascii,ignore)except (URLError,HTTPError) as e:print(Errors:\n)print(e)dataFile StringIO(data)csvReader csv.reader(dataFile)count 0for row in csvReader:if count 10:print(row)else:print(...\n...)breakcount 1#将数据写入本地csv文件with open(./localtmp.csv,wt,newline,encodingutf-8) as localcsvfile:writer csv.writer(localcsvfile)count 0try:for row in csvReader:if count 10:writer.writerow(row)else:breakcount 1finally:localcsvfile.close()csv文档的标题行(首行)需要特殊处理csv.DictReader可以很好的解决这个问题。DictReader将读取的行转换为python字典对象而不是列表。标题行的各列名即为字典的键名。 #csv.DictReader读取csv文件可以有效处理标题行等问题from urllib.request import urlopenimport csvfrom io import StringIO#在内存中读写str如果要操作二进制数据就需要使用BytesIOtry:data urlopen(http://pythonscraping.com/files/MontyPythonAlbums.csv).read().decode(ascii,ignore)except (URLError,HTTPError) as e:print(Errors:\n)print(e)dataFile StringIO(data)csvReader csv.reader(dataFile)dictReader csv.DictReader(dataFile)print(dictReader.fieldnames)count 0for row in dictReader:if count 10:print(row)else:print(...\n...)breakcount 13.抓取PDF文档pdf文档的远程抓取与操作可借助比较流行的pdfminer3k库来完成。 #抓取并操作pdf#pdf READ operationfrom urllib.request import urlopenfrom pdfminer.pdfinterp import PDFResourceManager,process_pdffrom pdfminer.converter import TextConverterfrom pdfminer.layout import LAParamsfrom io import StringIO,opendef readPDF(filename):resmgr PDFResourceManager()#STEP 1retstr StringIO()#STEP 2laparams LAParams()#STEP 3device TextConverter(resmgr,retstr,laparamslaparams)#STEP 4process_pdf(resmgr,device,filename)#STEP 5device.close()#STEP 6content retstr.getvalue()retstr.close()return contenttry:pdffile urlopen(http://www.fit.vutbr.cz/research/groups/speech/servite/2010/rnnlm_mikolov.pdf)except (URLError,HTTPError) as e:print(Errors:\n)print(e)outputString readPDF(pdffile)#也可以读取由pdffileopen(../../readme.pdf)语句打开的本地文件。print(outputString)pdffile.close()4.抓取WORD老版word使用了二进制格式后缀名为.docword2007后出现了与OPEN OFFICE类似的类XML格式文档后缀名为.docx。python对word文档的支持不够似乎没有完美解决方案。为读取docx内容可以使用以下方法(1)利用urlopen抓取远程word docx文件(2)将其转换为内存字节流(3)解压缩(docx是压缩后文件)(4)将解压后文件作为xml读取(5)寻找xml中的标签(正文内容)并处理 #读取word docx文档内容from zipfile import ZipFilefrom urllib.request import urlopenfrom io import BytesIOfrom bs4 import BeautifulSoupwordFile urlopen(http://pythonscraping.com/pages/AWordDocument.docx).read()wordFile BytesIO(wordFile)document ZipFile(wordFile)#xml_content document.read(word/document.xml)#print(xml_content.decode(utf-8))wordObj BeautifulSoup(xml_content.decode(utf-8),lxml)textStrings wordObj.findAll(w:t)for textElem in textStrings:print(textElem.text)5.抓取EXCEL6.抓取HTML源文档7.抓取HTML表单数据8.抓取Javascript数据更多内容请参考专题《python爬取功能汇总》进行学习。以上就是本文的全部内容希望对大家的学习有所帮助也希望大家多多支持聚米学院。
http://www.zqtcl.cn/news/981680/

相关文章:

  • 做网站需要几大模板河南中国建设信息网
  • 成都温江网站建设空间网页版
  • 做美股的数据网站邢台网站建设公司哪家好一点
  • 青岛即墨网站开发查询建设用地规划许可证在哪个网站
  • 成都APP,微网站开发芜湖企业100强
  • 江门搜索引擎网站推广网约车多少钱一辆
  • 北京高端网站建设宣传请人做软件开发的网站
  • h网站建设长沙本地公众号
  • 苏州工业园区劳动局网站做不了合同建域名做网站
  • 内蒙古建设兵团网站组建网站开发团队
  • 劳务派遣做网站的好处广州最新新闻事件
  • 海兴网站建设公司网站建设原则
  • 网站建设完不管了自己怎么接手wordpress个人主页
  • 具有品牌的网站建设霞浦建设局网站
  • 推荐个网站免费的wordpress force ssl
  • app网站搭建做英文网站的心得
  • 东莞企业网站制作推广运营多样化的网站建设公司
  • 深圳做网站那里好提交网址给百度
  • 泰州企业建站系统中企动力科技做什么的
  • 唐山公司网站建设 中企动力唐山宽带动态ip如何做网站访问
  • 个人商城网站怎么做电商网站及企业微信订烟
  • 温州市网站优化广告平面设计教程
  • 南通制作网站的有哪些公司吗sae 部署wordpress
  • 友情链接对网站的影响wordpress admin init
  • 渭南网站开发做网红用哪个网站
  • 湖北建设网站wordpress 翻页电子书
  • 网站设计命名规范厦门建站比较好的公司
  • 用vs2010做网站登入前端培训费用大概多少郑州
  • 网站建设后的效果评估杭州网站制作公司
  • 3网站建设公司影楼修图用什么软件