Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML DOM基本抓取_Javascript_Python_Html_Web Scraping_Beautifulsoup - Fatal编程技术网

Javascript HTML DOM基本抓取

Javascript HTML DOM基本抓取,javascript,python,html,web-scraping,beautifulsoup,Javascript,Python,Html,Web Scraping,Beautifulsoup,我试图从检查元素时出现的HTMLDOM中获取一个特定元素,但出于某种原因,这是在查看没有执行javascript的纯HTML代码。有什么想法吗?我做的唯一不同于其他人的事情是这一行避免了403错误 import urllib2 from bs4 import BeautifulSoup as BS #avoid 403 error request = urllib2.Request(url, headers={'User-Agent' : "Mozilla/5.0"}) html = url

我试图从检查元素时出现的HTMLDOM中获取一个特定元素,但出于某种原因,这是在查看没有执行javascript的纯HTML代码。有什么想法吗?我做的唯一不同于其他人的事情是这一行避免了403错误

import urllib2
from bs4 import BeautifulSoup as BS

#avoid 403 error
request = urllib2.Request(url, headers={'User-Agent' : "Mozilla/5.0"})

html = urllib2.urlopen(request).read()

soup = BS(html, 'html.parser')

print soup.find('div', {'class' : 'video'})
这是研究没有执行javascript的纯HTML代码

javascript没有被beautifulsoap解析,您得到的是原始网页,没有执行任何脚本

我做的唯一不同于其他人的事情是这一行避免了403错误


Urllib2的默认用户代理字符串是Python urllib/_Python_version_,可能您试图抓取的网站正在过滤该用户代理;通过添加firefox的浏览器,服务器会将网页返回给您,就好像您是从浏览器中访问它一样。

那么有什么办法吗?我试图更改标题,但得到了相同的响应。无法通过Beauty Soup执行javascript,因为它不包含javascript引擎。如果希望在js evaluation.post url或html代码之后获得呈现的页面,我建议您使用PhantomJS