python-10-爬虫selenium繁体字转换为简体字和NCR字符处理

1 将NCR字符转换成真实字符

以 &# 或 &#x 开头的字符串叫做 NCR 字符,在浏览器中查看会直接转换成中文。

一个Numeric Character Reference编码是由一个与号(&)跟着一个井号(#), 然后跟着这个字符的Unicode编码值, 最后跟着一个分号组成的。

在爬虫中使用 lxml 解析得到网页内容的html代码时,网页中的中文都会显示成 NCR 字符的形式。

import html
print(html.unescape("起翻落著。"))
起翻落著。

2 繁体字转简体字

(1)下载zh_wiki.py 和 langconv
https://github.com/skydark/nstools/blob/master/zhtools/zh_wiki.py
https://github.com/skydark/nstools/blob/master/zhtools/langconv.py
(2)将下载的 langconv.py 和 zh_wiki.py,放在python代码所在目录即可使用

from langconv import *
def simple2tradition(line):
    #将简体转换成繁体
    line = Converter('zh-hant').convert(line)
    return line
 
def tradition2simple(line):
    # 将繁体转换成简体
    line = Converter('zh-hans').convert(line)
    return line

tradition = "手攤開,頭上已溢出了汗珠。"
print(tradition)
simple = tradition2simple(tradition)
print(simple)

3 爬虫selenium

“C:\Program Files (x86)\Google\Chrome\Application\chrome.exe”
(1)打开chrome浏览器,选择设置->关于chrome,查看自己浏览器的版本。
在这里插入图片描述
(2)Http://npm.taobao.org/mirrors/chromedriver/打开网站,找到适合自己的版本进行。
在这里插入图片描述
(3)解压步骤4中下载压缩包,找到chromedriver.exe复制到chrome的安装目录。
(4)将目录C:\Program Files (x86)\Google\Chrome\Application添加到环境变量path中。

from selenium import webdriver#导入库
import time
browser = webdriver.Chrome()#声明浏览器
url = 'url'

while True:
    browser.get(url)#打开浏览器预设网址
    time.sleep(2)
    title = browser.find_element_by_class_name("text-overflow").text
    title = tradition2simple(title)
    print(title)
    filename = title+".txt"
    aa = browser.find_elements_by_tag_name("p")
    for a in aa:
        tmp = tradition2simple(a.text)
        with open(filename,'a+',encoding="utf8") as fw:
            fw.write(tmp+"\n")

    zz = browser.find_elements_by_css_selector('.clearfix li')
    ff = zz[0].find_element_by_tag_name("a")
    url=ff.get_attribute("href")
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

皮皮冰燃

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值