小编use*_*003的帖子

DOM/Javascript:标记后获取文本

如何获取html文档中标记后面的"那里"文本:

<p><a>hello</a>there</p>
Run Code Online (Sandbox Code Playgroud)

我看到有一种方法可以用xpath做到这一点:

从下一个标签获取文本

但我没有使用xpath,我希望不必为此而开始.我意识到我可以获得p标签内的所有文本,但我想获得"那里"文本,以及知道它与p和标签的关系.它似乎不是任何人的孩子或兄弟姐妹.(你可以假设我可以获得任何其他元素/节点,因此它可以相对于那些.)每个DOM教程似乎都忽略了文本可以在标记之外发生的事实.

谢谢.

javascript dom

7
推荐指数
2
解决办法
3万
查看次数

Python,转换4字节字符以避免MySQL错误"字符串值不正确:"

我需要将(在Python中)一个4字节的char转换为其他字符.这是将其插入到我的UTF-8 mysql数据库没有得到一个错误,如:"不正确的字符串值:在第1行'\ XF0\x9F\X94\x8E’列'线’"

通过向mysql插入4字节unicode引发的警告显示这样做:

>>> import re
>>> highpoints = re.compile(u'[\U00010000-\U0010ffff]')
>>> example = u'Some example text with a sleepy face: \U0001f62a'
>>> highpoints.sub(u'', example)
u'Some example text with a sleepy face: '
Run Code Online (Sandbox Code Playgroud)

但是,我得到了与评论中的用户相同的错误,"...字符范围很差.."这显然是因为我的Python是UCS-2(而不是UCS-4)版本.但后来我不知道该怎么做呢?

python mysql utf-8 character-encoding python-unicode

7
推荐指数
1
解决办法
3520
查看次数

Python/Django:在发生异常时自动记录,包括请求信息

我创建了一个函数log_error(request,traceback),我在异常中调用它.这会将错误信息写入数据库.现在,在我打开每个视图并将其添加到异常处理程序之前,有没有办法自动将所有异常引发到函数,然后调用它?

我已经看到了这个Python错误日志记录,它说要编写自己的sys.excepthook版本.出现异常时会自动调用此函数.我尝试了这个,但是即使我将解决方案复制粘贴到views.py并引发错误,也没有调用my_excepthook.但是,我并没有太努力,因为它无法获得我需要的所有信息.我还需要请求,以便我可以记录用户,网址等信息.

也许那要求太多了?

(我正在使用Django,但这似乎不是Django特有的东西)编辑:是的,确实如此.

python django logging exception

7
推荐指数
1
解决办法
1352
查看次数

javascript/jquery:创建并发布虚拟表单

在javascript中,我有一些我希望作为帖子发送的数据(不是ajax).它应该与用户单击提交按钮的行为相同.但是,我没有实际的表格.数据从页面收集到各种变量中,包括我编码为json的数组.

我可以用display:none创建一个html表单,将值放在这个表单中,然后触发不可见的提交按钮.有没有更好的办法?

javascript jquery

7
推荐指数
3
解决办法
3365
查看次数

Python PIL,在调整大小和保存时保持质量

我有一个大图像,我在PIL中调整大小,使其宽250像素.这是它将在我的网站上显示的宽度.

但是,分辨率非常糟糕.我发现它已经将dpi从180改为96.如果我在像Windows Paint这样的程序中调整图像大小,那么它会保持180 dpi.这个Paint-resized图像在我的网站上看起来好多了.(调整大小的图像为40kb,而PIL调整大小的图像为16kb)

如何保持dpi(或将其设置为在网站上看起来不错的最大值)

我使用PIL调整大小:

image = image.resize((new_width, new_height), Image.ANTIALIAS)
image.save(filepath)
Run Code Online (Sandbox Code Playgroud)

我试过了:

dpi = image.info['dpi']  # (180, 180)
image.save(filepath, dpi = dpi) 
Run Code Online (Sandbox Code Playgroud)

但它没有任何区别.dpi是180,但分辨率仍然很差.我猜测在调整大小期间需要设置dpi吗?

编辑:

问题似乎是节约,而不是调整大小.即使我从Paint-resized图像开始(因此不会在PIL中调整图像大小),它仍然会将其保存为96 dpi(16kb)的粗糙质量保持原样.

python python-imaging-library

7
推荐指数
1
解决办法
1万
查看次数

Firefox WebExtension:生成XMLHttpRequest

我正在制作Firefox WebExtension插件.这是应该发生的事情:

  1. 用户单击任何页面上的浏览器图标.
  2. 执行JavaScript,从页面收集信息.
  3. 信息将使用发送到我的服务器 XMLHttpRequest

这是我的Chrome扩展程序的功能.但是,我无法使用Firefox附加组件.JavaScript被注入并执行,因为我确实看到了alert()我在脚本末尾放置的内容.但是,没有调用我的服务器.Firefox调试器没有显示网络活动,也没有显示任何错误.

表现:

{
  "manifest_version": 2,
  "name": "my_name",
  "version": "1.0",
  "description": "My description",
  "icons": {
    "48": "icons/my_icon.png"
  },
  "permissions": [
    "activeTab"
  ],
  "browser_action": {
    "default_icon": "icons/some_icon.png",
    "default_title": "My Name"
  },
  "background": {
    "scripts": ["background.js"]
  }
}
Run Code Online (Sandbox Code Playgroud)

background.js:

browser.browserAction.onClicked.addListener(function(tab) {
    browser.tabs.executeScript(null, {file:"content_script.js"}); 
});
Run Code Online (Sandbox Code Playgroud)

content_script.js:

var xmlHttp=new XMLHttpRequest();
xmlHttp.open("POST", "https://www.my_site.org",true);
var formData = new FormData();  
formData.append("my_var", "my_var");
xmlHttp.send(formData); 
alert("I do get here!");
Run Code Online (Sandbox Code Playgroud)

javascript xmlhttprequest firefox-addon firefox-addon-webextensions

7
推荐指数
1
解决办法
977
查看次数

从其他应用程序打开Safari的深层链接

是否有一个深层链接将在Safari中从另一个应用程序打开一个页面?

我试过了

safari://https://www.google.com

safari://www.google.com
Run Code Online (Sandbox Code Playgroud)

但它不起作用.我得到弹出窗口询问是否要离开当前应用程序,但Safari无法打开.

这相当于Chrome,它的工作原理如下:

googlechrome://www.google.com
Run Code Online (Sandbox Code Playgroud)

safari deep-linking ios

7
推荐指数
1
解决办法
1481
查看次数

将Bitbucket Mercurial存储库转换为Git。维护分支机构和历史记录。在线解决方案

如何将Bitbucket Mercurial存储库(Hg存储库)转换为Git存储库?我想保留分支并提交历史记录。

git mercurial bitbucket

7
推荐指数
2
解决办法
377
查看次数

jquery:反向迭代 children()

我需要反向迭代 jquery 子元素:

$("#parent").children().each(function() {
  # do stuff
})
Run Code Online (Sandbox Code Playgroud)

但反过来。

我已经看到使用 reverse() 和 get()

$($("li").get().reverse()).each(function() { /* ... */ });
Run Code Online (Sandbox Code Playgroud)

但似乎无法让它与儿童()一起工作。

jquery

6
推荐指数
1
解决办法
2935
查看次数

HTML/CSS在没有javascript的情况下检测IE11

我一直在使用以下技巧来制作特定于浏览器的html:

<!--[if (IE)]>  <div class= "ie"> <![endif]-->
<!--[if !(IE)]><!--> <div class= "not_ie"> <!--<![endif]-->
</div>
Run Code Online (Sandbox Code Playgroud)

这不适用于IE11.有什么新技巧可以使用吗?

我可以使用javascript检测它:

使用CSS功能/特征检测检测IE11

要么

Object.hasOwnProperty.call(window, "ActiveXObject") && !window.ActiveXObject)
Run Code Online (Sandbox Code Playgroud)

但我希望避免这种情况.

html css internet-explorer-11

6
推荐指数
1
解决办法
2万
查看次数