url: http://www.goubanjia.com/
1. 分析页面:
根据结构,不难想象这是一个表格,如果通过页面去获取数据应该不难,但是通过检查发现,并不是想象中的那样(div, span, p层次不齐)
第一个没有多余的字符,好像可以直接获取,但是再看第二个
会发现,中间掺杂一些其他的标签,以及无用的信息,也许看到这里,新手这就犯难了,不要急,接下来继续.
我的解决方法是使用js,简单粗暴(你可尝试在控制台输入以下代码,可以直接打印出来)
通过css定位是表示 .ip
ip = document.querySelectorAll('.ip')
这个css查找返回一个数组(python 就当列表处理吧,但是这是js的对象),一共20行数据
获取第一个先:
ip[0]
那么如何获取字符串呢?
通过细心观察,有用的信息都是存储在div标签和span标签,p标签基本没用(display:none)
展开就是:
ip[0].querySelectorAll('div, span')
获取单个值的方法(用变量转换一下)
tag = ip[0].querySelectorAll('div, span')
tag[2].innerHTML
一个td标签里面的值的获取 (javascript箭头函数)
tag.forEach((item, index)=>console.log(item))
或者是直接获取到值(获取的数字的 左边的数字表示是重复打印)
tag.forEach((item