我正在尝试开发一个简单的网络刮刀.我想在没有HTML代码的情况下提取文本.事实上,我实现了这个目标,但我已经看到在加载JavaScript的某些页面中我没有获得好的结果.
例如,如果某些JavaScript代码添加了一些文本,我看不到它,因为当我打电话时
response = urllib2.urlopen(request)
Run Code Online (Sandbox Code Playgroud)
我没有添加原始文本(因为JavaScript在客户端中执行).
所以,我正在寻找一些解决这个问题的想法.
如何将JavaScript变量(不是JSON格式)转换为python变量?
JavaScript变量示例:
{
title: "TITLE",
name: "NAME",
active: false,
info: {
key1: "value1",
dict1: {
sub_key1: "sub_value1",
sub_key2: "sub_value2",
},
dict2: {
sub_key3: "sub_value3",
sub_key4: "sub_value4",
sub_key5: "sub_value5"
},
},
list1: ["element1", "element2", "element2"],
}
Run Code Online (Sandbox Code Playgroud) 我正在使用 html 输入文件标签上传一个 js 文件。我正在用python读取数据。由于在我的数据acb_messages中写入了var 。我无法解析它。我想使用这个变量名来获取数据。所以我可以删除它。
var acb_messages = {"messages": [{
"timestamp": 1475565742761,
"datetime": "2016-10-04 12:52:22 GMT+05:30",
"number": "VM-449700",
"id": 1276,
"text": "Some text here",
"mms": false,
"sender": false
}
]}
Run Code Online (Sandbox Code Playgroud)
请帮助如何在python中解析它以及如何使用它
我正在尝试使用requests和BeautifulSoup/来抓取以下页面Lxml
https://www.reuters.com/search/news?blob=soybean&sortBy=date&dateRange=all
这是一种带有load more results按钮的页面。我找到了几页解释如何执行此操作的页面,但不在requests.
我知道我应该多花几个小时研究这个问题,然后再在这里提问,以证明我已经尝试过。
我试图查看检查窗格、网络选项卡等,但我对了解如何与 javascript 交互的请求仍然有点太新鲜了。
我不需要完全成熟的脚本/解决方案作为答案,只需要一些关于如何使用 完成这项非常典型任务的指示requests,以节省我宝贵的研究时间。
提前致谢。
我想解析类似JSON的字符串.它们与普通JSON的唯一区别在于数组中存在连续的逗号.当有两个这样的逗号时,它隐含意味着null应插入其中.例:
JSON-like: ["foo",,,"bar",[1,,3,4]]
Javascript: ["foo",null,null,"bar",[1,null,3,4]]
Decoded (Python): ["foo", None, None, "bar", [1, None, 3, 4]]
Run Code Online (Sandbox Code Playgroud)
本机json.JSONDecoder类不允许我更改数组解析的行为.我只能修改对象(dicts),整数,浮点数,字符串的解析器(通过给kwargs函数JSONDecoder(),请参阅doc).
那么,这是否意味着我必须从头开始编写JSON解析器?可以使用Python代码,json但它非常混乱.我宁愿使用它的内部而不是复制它的代码!
python ×5
javascript ×3
json ×2
parsing ×1
python-2.7 ×1
python-2.x ×1
urlopen ×1
variables ×1
web-scraping ×1