python pycharm 爬取 <p>中还有<em>?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python pycharm 爬取 <p>中还有<em>?相关的知识,希望对你有一定的参考价值。

pycharm爬取英文,源代码是<p>He was an<em>teacher<em/>.</p>
我只能爬取He was an
.
怎么才能爬取完整的句子呢?恳请指教。

代码如下:
import requests
from lxml import etree
for i in range(1,13):
r=requests.get('网址前半部分'+str(i)+'网址后半部分').content
topic=etree.html(r)
html=topic.xpath('/html/body/div/div/div/div/div/p/text()')
book=open('D:\ok'+str(i)+'.txt','w+')
for x in html:
print(x,file=book)
print()
book.close()

html=topic.xpath(\'/html/body/div/div/div/div/div/p/text()\')
改成
html=topic.xpath(\'/html/body/div/div/div/div/div/p\').txt
试试
p/text() 可能只抓起p标签的纯文本文件,忽略em标签
参考技术A 多可恨啊 你xpath都不学完就爬
直接在p后面跟 // 就可以爬取非直接子元素的所有文本了
/代表的是直接子节点
然后 你的xpath写法太累赘 是直接复制浏览器的?

一篇文章教会你用Python爬取淘宝评论数据(写在记事本)

【一、项目简介】

本文主要目标是采集淘宝的评价,找出客户所需要的功能。统计客户评价上面夸哪个功能多,比如防水,容量大,好看等等。

【二、项目准备工作】

1. 准备Pycharm,下载安装等,可以参考这篇文章:Python环境搭建—安利Python小白的Python和Pycharm安装详细教程

2. 爬取商品地址,如下所示:

https://detail.tmall.com/item.htm?spm=a230r.1.14.1.55a84b1721XG00&id=552918017887&ns=1&abbucket=17

3. 需要下载几个库,如何下载呢?

打开pycharm软件点击File在点击setting选项,再选择Project:你的文件名下边的Project:Interpreter选项。

技术图片

点击+号,安装这个项目需要用的库,例如:requests、beautifulsoup4、simplejson。

技术图片

【三、项目实现】

1. 导入需要的库

import requests
from bs4 import  BeautifulSoup as bs
import json
import csv
import re

2. 需要登录淘宝网,选择谷歌浏览器选择开发者工具或按F12有个Network选项,查找list_detail_rate.htm?文件

技术图片

定义一个变量存储URL地址PAGE_URL = []

定义一个生成链接列表函数,使用字符串拼接形成评论的页数

技术图片

定义一个获取评论数据函数内定义需要用到的字段例如:用户名、评论时间、颜色分类、评论,如下图所示。

技术图片

技术图片

那个cookie值在在开发者工具Network有个item.htm?spm文件有个cookie复制过来就好了。

技术图片

解析JS文件内容、将数据写入TEXT文件中,如下图所示。

技术图片

技术图片

最后定义一个主函数爬取需要的评论页数,如下图所示。

技术图片

最后得到的结果如图所示:

技术图片

【四、总结】

1. 本文基于Python网络爬虫,采集了淘宝商品的评价,方法行之有效。但是建议不要抓取太多,以免对服务器造成压力。

2. 如果需要本文源码,请在公众号后台回复“淘宝评论”获取。

看完本文有收获?请转发分享给更多的人

IT共享之家
技术图片

以上是关于python pycharm 爬取 <p>中还有<em>?的主要内容,如果未能解决你的问题,请参考以下文章

爬取网页 第1节 Python的安装与Pycharm的安装

pycharm爬取的数据在哪

pycharm爬取网页数据

pycharm怎么爬取视频章节标题

pycharm中python爬取知网论文信息并保存在Excel中

Python初学者,为啥我爬取的网页数据输出列表没对齐