❶ 关于用xpath抓取<p>tag的问题
比如说我要抓取所有a标签html/body/div/form/table/tbody/tr/td[2]//a
❷ 求一个php写的爬虫,能绕过的。
根据题主的需求,手敲两个小时代码,拿走不谢
from selenium import webdriver
import time
import os
import requests
class Huaban():
def get_picture_url(self, content):
global path
path = "E:\spider\pictures\huaban" + '\\' + content
if not os.path.exists(path):
os.makedirs(path)
url = "http://huaban.com"
driver.maximize_window()
driver.get(url)
time.sleep(8)
try:
driver.find_elements_by_xpath('//input[@name="email"]')[0].send_keys('花瓣账号')
print('user success!')
except:
print('user error!')
time.sleep(3)
try:
driver.find_elements_by_xpath('//input[@name="password"]')[0].send_keys('账号密码')
print('pw success!')
except:
print('pw error!')
time.sleep(3)
❸ PHP怎么使用xpath解析html内容
实例如下:
<?php
$xml = simplexml_load_file("test.xml");
$result = $xml->xpath("form");
print_r($result);
?>
获取form内容
❹ PHP正则高手来,我求助小偷程序
<?php
$str = <<<STR
HTML略
STR;
preg_match("#http://[^'\]]+#i", $str, $matches);
var_mp($matches); // $matches是个数组
❺ xpath 怎么选取网页中表格的某一列
解析table,然后循环行和列就可以了
❻ python里的爬虫如何使用xpath 提取script里的元素
xpath也许只能提取html元素?
建议你先把content保存到本地文件,看看需要的内容有没有下载下来。
你这个属于script内容,看看直接正则能获得吗?
❼ xpath怎么抓取<div>下的所有<p>标签的文字
实现方法如下:
加载到XmlDocument,查找p子节点(XPath),如果要在子节点内继续查找,用递归;
string patten_block="<div class=\"wm_sktq_l\">[\\s\\S]*</div>"
string patten_p="<p>[\\s\\S]*</p>" 用组获取。
❽ 网页内容是由javascript或者php用爬虫有何不同
javascript是浏览器脚本,php是服务器脚本。你可以查看js的代码,但不能查看php的代码。抓取网页的时候php网页的内容显得更干净,而js网页还要过滤掉js代码。
❾ php采集多个tr中的内容如何做
<?php
$dom = new DOMDocument();
$dom->loadHTML($html);
$props = array();
$xpath = new DOMXPath($dom);
$trNodes = $xpath->query("//tr");
foreach($trNodes as $trNode) {
$thNodes = $xpath->query("./th");
$tdNodes = $xpath->query("./td");
if($thNodes->length == 0 || $tdNodes->length == 0) continue;
props[$thNodes->item(0)->nodeValue] = $tdNodes->item(0)->nodeValue;
}
var_mp($props);
❿ 怎样抓取下拉菜单被选择项的值
1. 为什么不能用XPath抓取SELECT的被选项
相比于正则表达式,XPath在抓取网页内容上更加易用,GooSeeker网络爬虫整个都采用XPath表达式来提取信息。但是有些HTML动作控件的内容用XPath抓取不到,例如,下拉菜单SELECT选中的OPTION是哪个?这个信息抓取不到,假设你编写了一个XPath://select[@class='selectMonth']/option[@selected='true'] ,这个XPath是无效的。如果目标网页上的下拉菜单确实设置了一个缺省选中的OPTION,那只是缺省情况,不代表动态情况。
原因很简单:XPath可以抓取html属性值(attribute),但是不能抓取特性值(property)。
2. GooSeeker在抓取结果文件中保存选中项值
要抓取选中项的值,必须为这个下拉菜单定义一个连续动作,那么DS打数机就能记录下来当前动作做到哪一个OPTION了。下图是一个文件样例。
在文件前部增加了两个标签,用于记录动作循环次数actionno和动作施加点的值actionvalue,数值之间用-+-来间隔开。
actionno:表示每层动作执行到第几次循环了;
actionvalue:表示特定动作类型执行后的结果,比如,选中的OPTION的值,有些动作是不记录结果的,比如,自动滚屏;
上图可以看出,定义了6层动作,第2和第3层动作分别选择年份和月份,而且已经选择到1960年4月。解析这两个字段的时候,识别-+-符号就能分割成相应层次动作的执行次数。如果动作类型是输入,当用户输入的字符串含有+号时,DS打数机就会自动再增加一个+号,所以,解析结果的时候要注意转义处理。