diff --git a/extractor.go b/extractor.go index fb404f9..969fa69 100644 --- a/extractor.go +++ b/extractor.go @@ -2,6 +2,7 @@ package textractor import ( "strings" + "sync" "github.com/PuerkitoBio/goquery" ) @@ -39,23 +40,32 @@ func Extract(source string) (*Text, error) { } body := dom.Find("body") normalize(body) - content := contentExtract(body) - publishTime := timeExtract(body) - author := authorExtract(body) - title := titleExtract(dom.Selection, content.node) result := &Text{} - result.Content = content.density.tiText - result.ContentHTML, _ = content.node.Html() - var imgs []string - content.node.Find("img").Each(func(i int, s *goquery.Selection) { - if src, ok := s.Attr("src"); ok { - imgs = append(imgs, src) - } - }) - result.Image = imgs - result.PublishTime = publishTime - result.Author = author - result.Title = title + wg := &sync.WaitGroup{} + wg.Add(3) + go func() { + result.PublishTime = timeExtract(body) + wg.Done() + }() + go func() { + result.Author = authorExtract(body) + wg.Done() + }() + go func() { + content := contentExtract(body) + result.Title = titleExtract(dom.Selection, content.node) + result.Content = content.density.tiText + result.ContentHTML, _ = content.node.Html() + var imgs []string + content.node.Find("img").Each(func(i int, s *goquery.Selection) { + if src, ok := s.Attr("src"); ok { + imgs = append(imgs, src) + } + }) + result.Image = imgs + wg.Done() + }() + wg.Wait() return result, nil } diff --git a/extractor_test.go b/extractor_test.go index e58b396..5320f8b 100644 --- a/extractor_test.go +++ b/extractor_test.go @@ -56,3 +56,681 @@ func Test_emptyNode(t *testing.T) { } } } + +var testSource = ` + + + +
+ + + + + +各位,久等,今天是10月16日,星期三。
首先我们来回顾今日有色行业要闻:
1、9月份铜板带箔企业开工率为70.62%,同比下滑6.16个百分点,环比回升1.16个百分点。
2、南山铝业将于2020年底在印尼投产一期氧化铝项目,第一阶段项目建设已从今年年初开始,具有同样产能的第二阶段项目预计将于明年年中启动建设。统计显示,明年年底前中国公司在印尼投资的的氧化铝项目合计年产能将达400万吨。
3、由于社区抗议、封锁道路,切断了物资供应,五矿资源已暂停了Las Bambas铜矿90%的运营,周三或将完全停止该矿运营。秘鲁政府试图重启与当地社区的对话。
4、泰克资源旗下智利铜矿罢工进入第二天,该矿工会主席Manuel Alvarez表示,劳资双方未安排任何谈话。
5、印尼金川红土镍矿冶炼厂1#线镍铁电炉砌筑施工完成,标志着印尼金川红土镍矿项目所有耐材施工全部结束。
6、CRU的估计数据,今年前三季度世界精铜产量为1765.10万吨, 消费量为1769.50万吨,短缺数量为4.40万吨。
7、智利安托法加斯塔矿业公司周二表示,已与智利洛斯佩兰贝尔斯旗舰铜矿的工会达成劳工协议。
8、惠誉解决方案周三预计,中国2019-2028年铜产量年增长速度平均奖放缓至1.9%,低于前10年平均4.8%的增速,因国内铜矿石品位降低。
9、哈萨克斯坦统计局公布的数据显示,今年1-9月精炼铜产量同比增加11%,至354,836吨;精炼锌产量同比下滑0.9%,至235,914吨。
10、力拓公布的报告显示,2019年第三季度铝土矿产量为1380万吨,同比增加9%。
11、韩国央行将基准利率下调25个基点至1.25%,为年内第二次降息,追平历史低点。
关键性指数变动情况:
美元指数(USDX)收盘报98.30点,较上一交易日跌0.16点,跌幅0.16%;CRB指数收盘报174.75点,较上个交易日跌0.24点,跌幅0.14%;美国原油(WTI)主力合约收盘报52.91美元/桶,较上个交易日跌0.57美元,跌幅1.07%;BDI(波罗的海干散货运价指数)较上个交易日1898.00点,收报跌18点,跌幅0.94%。上证综指收盘报2978.71点,较上个交易日跌12.34点,跌幅0.41%。
【铝】
期货方面:
沪铝1911收报13885涨120,沪铝2001收报13830涨70;LME场内铝收报1728涨8。
现货方面:
今日期铝涨幅较大,前期惜售的持货商今日出货积极性有明显提升,而中间商接货热情未减,部分贸易商认为现货市场偏紧,对短期内铝价及升水有一定期待,因而接货较为积极,买卖双方交投活跃。因铝价大涨,部分下游今日按需走货为主,但也有贸易商反馈少量厂商因前期对价格观望一直买货不多,如今库存消耗无几不得不开始接货。整体而言,华东今日整体成交不错。
价格方面:
长江有色A00铝均价报13880涨110;南海有色佛山A00铝均价报14150涨70;中铝公司华东铝锭13900,华南铝锭13860,西南铝锭13820,中原铝锭13800,氧化铝地区报价全线上调50元/吨。
关键性指数:
上海期货、长江有色基差报5,较前一交易日跌5;沪伦比报7.97,较前一交易日跌0.25%;升贴水报-55,较前一交易日跌40;长江有色、南海有色南北价差报270,较前一交易日跌40;铝价指数报93.13,较前一交易日涨0.64或涨幅0.69%。
【铜:沪伦比触发预警】
期货方面:
沪铜1911收报46730跌180,沪铜2001收报46800跌160;LME场内铜收报5773跌45;COMEX期铜主力合约收跌0.02美元,收盘报2.6115美元/磅。
现货方面:
换月后首日,持货商持稳报价于升水40-升水70元/吨,低价货源得到市场青睐,吸引贸易商入市收货,早市尚能压价,成交活跃度尚好,尤其是平水铜买兴较高,询盘明显较为活跃,但是周初进口铜集中到货入库令库存压力仍在,成交暂难有实质性改变,下游按需采购。
价格方面:
长江有色1#铜均价报46960跌120;南储华南1#阴极铜均价报46880跌110。
关键性指数:
上海期货、长江有色基差报-230,较前一交易日跌30;沪伦比报8.13,较前一交易日涨0.74%,连续两天触发预警;升贴水报70,较前一交易日跌10;长江有色、广东南储南北价差报-80,较前一交易日涨10;铜价指数报95.3,较前一交易日跌0.24或跌幅0.25%。
【铅锌镍锡】
期货方面:
沪锌1911收报18880跌100,沪锌2001收报18955跌40;沪铅1911收报16895涨75,沪铅2001收报16675涨60;沪镍1911收报133820跌950,沪镍2001收报131550跌1480;沪锡1911收报136040涨140,沪锡2001收报138790涨1830。
LME场内锌收报2438涨18;LME场内铅收报2148.50涨17.5;LME场内镍收报16995涨345;LME场内锡收报16700涨180。
价格方面:
长江有色1#铅均价报16925涨50;长江有色0#锌均价报19480跌100;长江有色1#锌均价报18955跌100;长江有色1#镍板均价报134600涨300;长江有色1#锡均价报138750涨1250。
【有色金属库存情况】
上期所基本金属仓单:铜64399吨,增加1472吨;铝98686吨,增加3178吨;锌35659吨,减少153吨;铅14710吨,持平;镍23757吨,持平;锡3965吨,增加84吨。
伦敦金属交易所(LME):LME铜库存增加600吨,铝库存减少2375吨,锌库存减少150吨,镍库存减少3600吨,锡库存增加130吨,铅库存持平。
COMEX铜库存报37408短吨,较上个交易日减22短吨。
【分析汇总】
今日收盘后共采集到21位分析师观点:
对于下周一铜价持看涨及震荡偏强观点3位,持看跌及震荡偏弱观点8位。
对于下周一铝价持看涨及震荡偏强观点3位,持看跌及震荡偏弱观点7位。
今日的晚观察就是这样,我们明天见!