导入模块
from lxml import etree
举例1:
李四li就是标签名 a是li下的标签名 class与href=的为标签
item-1与link2.html是标签属性 > < 之间的李四是标签内容
内容.xpath(///标签名/标签名) 获得的变签内容
注:// 双斜杠是以此标签名义获取的所有内容 / 单斜杠是获取这个标签下的内容 不是所有的
内容:xpath(//标签名/标签名[@标签]') #注:标签名后 [@ ] 获取指定内容
内容:xpath(//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////@标签') #注:标签后面 /@ 获取指定的标签属性
举例2
html=etree.HTML(res)
//代表所有权 所有div下面的 a标签下面 [@]中括号加@填写条件 如:[@条件]
/单斜杠代表下面的,不是下面的 不要中括号 如/@加条件就会获取οnclick=后面的值
得到onclick后面的值
result2=html.xpath('//div//a[@href="javascript:;"]/@onclick')
举例3
获取div之间的汉字 得到名称 参数为列表
result3=html.xpath('//tbody//div[@class="w150 tableText"]')
举例4
添加多种条件方法进行清法 or 代表或者 | 以后可以重新添加条件
result4=html.xpath(
'//tbody//div[@class="kyc tableText" or @class="w180 tableText" or @class="w150 tableText"] | \
//tbody//td[@class="w200"]/div[@class="w200 tableText"]|\
//div//a[@class="qy_link btnaction" or @href="javascript:;"]/@onclick'
)
scrapy爬虫框架
items.py ##定义目标数据的字段
pipelines.py #管道
scrapy startproject 项目名称 #创建scrapy项目
scrapy genspider 你想写的代码文件名称 url简写 #创建你需要写的代码文件
scrapy crawl 文件名 #执行代码
scrapy crawl 文件名 -o 名.json #o是字母 转化为json保存本地数据
for循环下用这个
yield x 收益率 提交效率 拿一个拿一个 用这种语法获得的生成器
原文链接:https://blog.csdn.net/weixin_43998608/article/details/108825911