php抓取网页(php抓取网页时使用正则,遇到字符串包含(0,))
优采云 发布时间: 2022-02-11 06:01php抓取网页(php抓取网页时使用正则,遇到字符串包含(0,))
php抓取网页时使用正则,遇到字符串包含(0,"高级"),"高级"的含义是"老",说明该网页要么是用php做的,要么是用redis做的,这时就不能把它下载下来。把它下载下来用各种“强制转换”或者“正则匹配”匹配到想要的数据即可。
爬虫遇到要获取的数据,用正则规则,选择xpath,就能获取想要的数据了,然后就要写一个函数把获取的数据聚合。题主你用php写一个,
想获取某个元素所属的文件。用re然后调用requests库里的headers.get来获取。
php+正则比较适合爬取保存起来的类似json的一维data,高维其实还是map不了,
正则表达式。正则表达式可以匹配所有的字符串,比如scrapy的正则处理得当可以匹配大多数网页代码中的文本,但是网页上如果包含比较复杂的样式,这个时候一个常用的技巧是将正则写进一个内置函数中或直接是python的str.split用索引获取文本。还有使用模板渲染一些网页特征也可以轻松获取。
如果可以,用python。如果仅仅是html片段,用requests或者beautifulsoup都可以。这些工具都是可以处理成json的形式的。
正则表达式,除非有特殊需求,不要用其他对待网页的方式,
一般写爬虫用正则+beautifulsoup,抓取过程中会用到bs,否则可以不用。