情感本文分类的时候的,简单的将文本中的emoji表情换为了文字,勉强提升了一下准确率。
英文释意:/
中文释义:/
其实吧,直接三行代码就可以搞定~
三行神龙代码在结尾,先放一下正常的爬虫。
import requests
from bs4 import BeautifulSoup
from pandas import DataFrame
import pprint
from lxml import etreedef get_table_from_html(html):tree = etree.HTML(html)# 寻找所有的table标签table_lst = tree.xpath("//table")table_data_lst = []for table in table_lst:table_data_lst.append(get_table(table))return table_data_lstdef get_table(table_ele):"""获取table数据:param table_ele::return:"""tr_lst = table_ele.xpath(".//tr")# 第一行通常来说都是标题title_data = get_title(tr_lst[0])# 第一行后面都是数据data = get_data(tr_lst[1:])return {'title': title_data,'data': data}def get_title(tr_ele):"""获取标题标题可能用th 标签,也可能用td标签:param tr_ele::return:"""# 先寻找th标签title_lst = get_tr_data_by_tag(tr_ele, 'th')if not title_lst:title_lst = get_tr_data_by_tag(tr_ele, 'td')return title_lstdef get_data(tr_lst):"""获取数据:param tr_lst::return:"""datas = []for tr in tr_lst:tr_data = get_tr_data_by_tag(tr, 'td')datas.append(tr_data)return datasdef get_tr_data_by_tag(tr, tag):"""获取一行数据:param tr::param tag::return:"""datas = []nodes = tr.xpath(".//{tag}".format(tag=tag))for node in nodes:text = node.xpath('string(.)').strip()datas.append(text)return datasdef get_html(url):headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36',}res = (url, headers=ding = 'utf-8'def run(url): html = get_html(url)table_lst = get_table_from_html(html)# 结构是比较简单的 ans = []for i in range(len(table_lst[0]['data'])):ans.append([table_lst[0]['data'][i][7], table_lst[0]['data'][i][1]])return ans
if __name__ == '__main__':url = '/'data = run(url)
# _csv()print(data)
其实吧,直接三行代码就可以搞定~
import pandas as pd
url='/'
data = pd.read_html(url)[0][1:]
直接获得网站上的表情,刺激~。难怪都说python是爬虫的最佳语言
本文发布于:2024-02-01 06:54:49,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170674169134701.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |