GVKun编程网logo

html – @media print for chrome无效(html parsing not performed)

8

在本文中,我们将为您详细介绍html–@mediaprintforchrome无效的相关知识,并且为您解答关于htmlparsingnotperformed的疑问,此外,我们还会提供一些关于3-Pyt

在本文中,我们将为您详细介绍html – @media print for chrome无效的相关知识,并且为您解答关于html parsing not performed的疑问,此外,我们还会提供一些关于3-Python爬虫-动态HTML/Selenium+PhantomJS/chrome无头浏览器-chromedriver、ajax跨域:Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.、Android> Chrome Chromecast图标超过html5视频位置、ChromeWebDriver-未知错误:Chrome无法启动:崩溃的有用信息。

本文目录一览:

html – @media print for chrome无效(html parsing not performed)

html – @media print for chrome无效(html parsing not performed)

好吧,只是标题所有人都必须认为这是重复的,但我已经尝试了StackOverflow的一些结果,没有运气.

@media print适用于Firefox.当我尝试使用Chrome时,它很乱.

很多人建议使用@media屏幕和(-webkit-min-device-pixel-ratio:0),我这样做了.但Chrome不会读取所有选择器和属性.

例如,我有:

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    a[href]:after {
        content: none !important;
    }
}

这不会删除打印视图中的href值.

@media print {
    a[href]:after {
        content: none !important;
    }
}

这适用于Firefox.但是,当然,因为它是@media打印,所以这根本不适用于Chrome.

我甚至试过* {transition:none!important},很多人说这很有用,但它仍然不适合我.

当然,我也补充道

<link rel="stylesheet" media="print" href="{% static "css/print.css" %}">

有些人甚至说“使用JavaScript来检测它是否是Chrome用户代理”,我也试过,但我已经删除了代码,所以我不能在这里发布.

许多结果来自多年前.我认为最近的一次是从2014年开始.我想知道是不是因为Chrome更新了什么,这就是为什么他们过去工作但不再是.

这两个网站是最受欢迎的网站,但仍然没有运气尝试他们写的东西.

Print media queries not working?

Tips And Tricks For Print Style Sheets

任何人都可以给我一个想法,或者有人知道如何让它在Chrome上运行吗?

在此先感谢(希望这不是重复,因为我看到了很多线程,所有这些线程都与我上面尝试的答案相关联).

如果有人对我应该做什么有任何建议,请告诉我.

解决方法

我只需删除标记中的media属性,就可以解决Chrome中主要CSS文件中的嵌入式@print样式表问题:

< link rel =“stylesheet”href =“css / styles.css”>

另一方面,我个人从未见过在< link>中使用%static …%元素之前.你试过不用那个吗?

现在,如果要链接单独的打印样式表,我建议不要包含媒体属性:

< link rel =“stylesheet”href =“css / print.css”>

3-Python爬虫-动态HTML/Selenium+PhantomJS/chrome无头浏览器-chromedriver

3-Python爬虫-动态HTML/Selenium+PhantomJS/chrome无头浏览器-chromedriver

动态HTML

爬虫跟反爬虫

动态HTML介绍

  • JavaScrapt
  • jQuery
  • Ajax
  • DHTML
  • Python采集动态数据
    • 从Javascript代码入手采集
    • Python第三方库运行JavaScript,直接采集你在浏览器看到的页面

Selenium + PhantomJS

  • Selenium: web自动化测试工具
    • 自动加载页面
    • 获取数据
    • 截屏
    • 安装: pip install selenium==2.48.0
    • 官网: http://selenium-python.readthedocs.io/index.html
  • PhantomJS(幽灵)
    • 基于Webkit 的无界面的浏览器
    • 官网: http://phantomjs.org/download.html
  • Selenium 库有有一个WebDriver的API
  • WebDriver可以跟页面上的元素进行各种交互,用它可以来进行爬取
  • 案例 v36
  • chrome + chromedriver
    • 下载安装chrome: 下载+安装
    • 下载安装chromedriver:
  • Selenium操作主要分两大类:
    • 得到UI元素
      • find_element_by_id
      • find_elements_by_name
      • find_elements_by_xpath
      • find_elements_by_link_text
      • find_elements_by_partial_link_text
      • find_elements_by_tag_name
      • find_elements_by_class_name
      • find_elements_by_css_selector
    • 基于UI元素操作的模拟
      • 单击
      • 右键
      • 拖拽
      • 输入
      • 可以通过导入ActionsChains类来做到
    • 案例37

案例v36

''''''
通过webdriver操作进行查找1
''''''



from selenium import webdriver
import time




# 通过Keys模拟键盘
from selenium.webdriver.common.keys import  Keys

# 操作哪个浏览器就对哪个浏览器建一个实例
# 自动按照环境变量查找相应的浏览器
driver = webdriver.PhantomJS()

# 如果浏览器没有在相应环境变量中,需要指定浏览器位置


driver.get("http://www.baidu.com")


# 通过函数查找title标签
print("Title: {0}".format(driver.title))

案例v37

from selenium import webdriver
import time
from selenium.webdriver.common.keys import  Keys

# 可能需要手动添加路径
driver = webdriver.Chrome()

url = "http://www.baidu.com"


driver.get(url)


text = driver.find_element_by_id(''wrapper'').text
print(text)
print(driver.title)
# 得到页面的快照
driver.save_screenshot(''index.png'')

# id="kw" 的是百度的输入框,我们得到输入框的ui元素后直接输入“大熊猫"
driver.find_element_by_id(''kw'').send_keys(u"大熊猫")

# id="su"是百度搜索的按钮,click模拟点击
driver.find_element_by_id(''su'').click()

time.sleep(5)
driver.save_screenshot("daxiongmao.png")


#获取当前页面的cookie
print(driver.get_cookies())

# 模拟输入两个按键 ctrl+ a
driver.find_element_by_id(''kw'').send_keys(Keys.CONTROL, ''a'')
#ctr+x 是剪切快捷键
driver.find_element_by_id(''kw'').send_keys(Keys.CONTROL, ''x'')

driver.find_element_by_id(''kw'').send_keys(u''航空母舰'')
driver.save_screenshot(''hangmu.png'')

driver.find_element_by_id(''su'').send_keys(Keys.RETURN)

time.sleep(5)
driver.save_screenshot(''hangmu2.png'')


# 清空输入框 , clear
driver.find_element_by_id(''kw'').clear()
driver.save_screenshot(''clear.png'')

# 关闭浏览器
driver.quit()

selenium自动化测试 工具:

-用selenium登录的时候,先要get到页面; -get到页面之后就可以准备输入了, -selenium可以模拟输入; -selenium调没有界面的chrome或者PhantomJS -保存快照,手动输入,对静态验证码的一大杀手。

ajax跨域:Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.

ajax跨域:Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.

跨域请求时出现:jquery-1.8.3.min.js:2 Failed to load localhost:8526/dvi/1.0/areaIndicesLists: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.

js所在页面是在tomcat环境中运行的

Android> Chrome Chromecast图标超过html5视频位置

Android> Chrome Chromecast图标超过html5视频位置

如果有Chromecast并且:

如果启用了html5视频控件,则转换按钮会显示在控制栏中.

如果禁用了html5视频控件,则会在左上方显示转换按钮.

我想禁用本机控件,但也包括我自己的转换按钮,video.js-chromecast的功能,但原生按钮仍然显示.

反正有没有在html5视频上重新定位Cast图标?还是完全隐藏它?

解决方法

在搜索了Chromium源代码后,我想出了如何做到这一点:
video::-internal-media-controls-overlay-cast-button {
    display: none;
}

示例:http://jsfiddle.net/f1quhd2L/8/

ChromeWebDriver-未知错误:Chrome无法启动:崩溃

ChromeWebDriver-未知错误:Chrome无法启动:崩溃

我正在尝试使用ChromeWebDriver在Chrome上测试我的应用程序,但是每次尝试都会出现以下异常:

   org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: crashed  (Driver info: chromedriver=2.10.267521,platform=Windows NT 6.1 SP1 x86_64) (WARNING: The server did not provide any stacktrace information)Command duration or timeout: 61.46 secondsBuild info: version: ''2.41.0'', revision: ''3192d8a6c4449dc285928ba024779344f5423c58'', time: ''2014-03-27 11:29:39''System info: host: ''PADAMSKI-W'', ip: ''10.10.8.60'', os.name: ''Windows 7'', os.arch: ''amd64'', os.version: ''6.1'', java.version: ''1.6.0_37''Driver info: pl.axit.test.selenium.env.KoralinaChromeDriver    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)    at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:193)    at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:145)    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:595)    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:240)    at org.openqa.selenium.chrome.ChromeDriver.startSession(ChromeDriver.java:181)    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:126)    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:139)    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:160)    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:149)

在chromedriver.log中,我看到了

[0.681][INFO]: Launching chrome: "C:\Users\padamski.AXIT.PL\AppData\Local\Google\Chrome\Application\chrome.exe" --disable-background-networking --disable-client-side-phishing-detection --disable-component-update --disable-default-apps --disable-hang-monitor --disable-prompt-on-repost --disable-sync --disable-web-resources --enable-logging --ignore-certificate-errors --load-extension="C:\Users\PADAMS~1.PL\AppData\Local\Temp\scoped_dir4048_12236\internal" --logging-level=1 --metrics-recording-only --no-first-run --password-store=basic --remote-debugging-port=12573 --safebrowsing-disable-auto-update --safebrowsing-disable-download-protection --use-mock-keychain --user-data-dir="C:\Users\PADAMS~1.PL\AppData\Local\Temp\scoped_dir4048_22909" --window-size=6000,6000 data:,[60.836][INFO]: RESPONSE InitSession unknown error: Chrome failed to start: crashed

我正在使用:

  • 镀铬36
  • ChromeWebDriver 2.10
  • Windows 7的

在Process Explorer中,我可以看到chromedriver.exe进程正在运行,但是没有打开任何窗口,几秒钟后,我得到了上面的异常。

我的起始代码是:

 File f = ResourceProvider.getResource("tools/win/chromedriver.exe"); System.setProperty("webdriver.chrome.driver", f.getAbsolutePath()); return new ChromeDriver();

答案1

小编典典

最终,我发现WebDriver尝试从运行Chrome
C:\Users\______\AppData\Local\Google\Chrome\Application\chrome.exe,即使手动尝试也无法正常运行。这很奇怪,因为当我启动Chrome时,我使用的是安装在ProgramFiles目录中的Chrome ,它可以正常工作。

因此,我已经卸载了Chrome,从中删除了所有内容,c:\Users______\AppData\Local\Google\Chrome\然后再次安装了Chrome。之后,它开始工作。

今天的关于html – @media print for chrome无效html parsing not performed的分享已经结束,谢谢您的关注,如果想了解更多关于3-Python爬虫-动态HTML/Selenium+PhantomJS/chrome无头浏览器-chromedriver、ajax跨域:Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.、Android> Chrome Chromecast图标超过html5视频位置、ChromeWebDriver-未知错误:Chrome无法启动:崩溃的相关知识,请在本站进行查询。

本文标签: